23 lines
		
	
	
	
		
			1.3 KiB
			
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
	
		
			1.3 KiB
			
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 | 
						|
From: Trigary <trigary0@gmail.com>
 | 
						|
Date: Sat, 5 Jun 2021 10:29:39 +0200
 | 
						|
Subject: [PATCH] fix empty array elements in command arguments
 | 
						|
 | 
						|
Adjacent spaces caused empty array elements due to how String#split works.
 | 
						|
This change removes those empty array elements without modifying anything else.
 | 
						|
Adjacent spaces sent by players are removed in PlayerConnection, so this change doesn't affect players.
 | 
						|
But it does affect the console, command blocks, Bukkit.dispatchCommand, etc.
 | 
						|
 | 
						|
diff --git a/src/main/java/org/bukkit/command/SimpleCommandMap.java b/src/main/java/org/bukkit/command/SimpleCommandMap.java
 | 
						|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
 | 
						|
--- a/src/main/java/org/bukkit/command/SimpleCommandMap.java
 | 
						|
+++ b/src/main/java/org/bukkit/command/SimpleCommandMap.java
 | 
						|
@@ -0,0 +0,0 @@ public class SimpleCommandMap implements CommandMap {
 | 
						|
      */
 | 
						|
     @Override
 | 
						|
     public boolean dispatch(@NotNull CommandSender sender, @NotNull String commandLine) throws CommandException {
 | 
						|
-        String[] args = commandLine.split(" ");
 | 
						|
+        String[] args = org.apache.commons.lang3.StringUtils.split(commandLine, ' '); // Paper - fix adjacent spaces (from console/plugins) causing empty array elements
 | 
						|
 
 | 
						|
         if (args.length == 0) {
 | 
						|
             return false;
 |