diff options
Diffstat (limited to 'src/main/java/net/minecraft/server/NetServerHandler.java')
-rw-r--r-- | src/main/java/net/minecraft/server/NetServerHandler.java | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/main/java/net/minecraft/server/NetServerHandler.java b/src/main/java/net/minecraft/server/NetServerHandler.java index c73e75a2..bca70f50 100644 --- a/src/main/java/net/minecraft/server/NetServerHandler.java +++ b/src/main/java/net/minecraft/server/NetServerHandler.java @@ -3,12 +3,15 @@ package net.minecraft.server; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; +import java.util.logging.Level; import java.util.logging.Logger; // CraftBukkit start +import org.bukkit.ChatColor; import org.bukkit.block.BlockFace; import org.bukkit.block.BlockDamageLevel; import org.bukkit.Location; +import org.bukkit.command.CommandException; import org.bukkit.craftbukkit.block.CraftBlock; import org.bukkit.craftbukkit.inventory.CraftItemStack; import org.bukkit.craftbukkit.entity.CraftPlayer; @@ -624,8 +627,17 @@ public class NetServerHandler extends NetHandler implements ICommandListener { if (event.isCancelled()) { return; } - - boolean targetPluginFound = server.dispatchCommand(player, s.substring(1)); + + boolean targetPluginFound = false; + + try { + targetPluginFound = server.dispatchCommand(player, s.substring(1)); + } catch (CommandException ex) { + player.sendMessage(ChatColor.RED + "An internal error occured while attempting to perform this command"); + Logger.getLogger(NetServerHandler.class.getName()).log(Level.SEVERE, null, ex); + return; + } + if (targetPluginFound) { return; } |