From 8fb03c1da74c0be411b80e66931abad5090af023 Mon Sep 17 00:00:00 2001 From: t00thpick1 Date: Sat, 8 Feb 2014 15:50:30 -0500 Subject: [Bleeding] Also blacklist ":" in plugin command aliases. --- src/main/java/org/bukkit/command/PluginCommandYamlParser.java | 10 +++++++++- src/main/java/org/bukkit/plugin/PluginDescriptionFile.java | 6 ++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/bukkit/command/PluginCommandYamlParser.java b/src/main/java/org/bukkit/command/PluginCommandYamlParser.java index 67875bcf..5854583e 100644 --- a/src/main/java/org/bukkit/command/PluginCommandYamlParser.java +++ b/src/main/java/org/bukkit/command/PluginCommandYamlParser.java @@ -44,10 +44,18 @@ public class PluginCommandYamlParser { if (aliases instanceof List) { for (Object o : (List) aliases) { + if (o.toString().contains(":")) { + Bukkit.getServer().getLogger().severe("Could not load alias " + o.toString() + " for plugin " + plugin.getName() + ": Illegal Characters"); + continue; + } aliasList.add(o.toString()); } } else { - aliasList.add(aliases.toString()); + if (aliases.toString().contains(":")) { + Bukkit.getServer().getLogger().severe("Could not load alias " + aliases.toString() + " for plugin " + plugin.getName() + ": Illegal Characters"); + } else { + aliasList.add(aliases.toString()); + } } newCmd.setAliases(aliasList); diff --git a/src/main/java/org/bukkit/plugin/PluginDescriptionFile.java b/src/main/java/org/bukkit/plugin/PluginDescriptionFile.java index 9e6c1d94..0d1e3a04 100644 --- a/src/main/java/org/bukkit/plugin/PluginDescriptionFile.java +++ b/src/main/java/org/bukkit/plugin/PluginDescriptionFile.java @@ -537,7 +537,9 @@ public final class PluginDescriptionFile { * Alternative command names, with special usefulness for commands * that are already registered. Aliases are not effective when * defined at runtime, so the plugin description file is the - * only way to have them properly defined. + * only way to have them properly defined. + *

+ * Note: Command aliases may not have a colon in them. * Single alias format: *

aliases: combust_me
or * multiple alias format: @@ -617,7 +619,7 @@ public final class PluginDescriptionFile { * # Having an empty declaration is useful for defining the description, permission, and messages from a configuration dynamically * apocalypse: * - * Note: command names may not have a colon in their name. + * Note: Command names may not have a colon in their name. * * @return the commands this plugin will register */ -- cgit v1.2.3