summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authormd_5 <git@md-5.net>2017-07-10 21:05:47 +1000
committermd_5 <git@md-5.net>2017-07-10 21:05:47 +1000
commitaf1c0139f56e444dbcaf191664829a33eb4dfd59 (patch)
tree78cb3665bbdd223f2a8ad8ed3f64395efaf735fa /src
parent50b75cd65dd241a01d160d1a4e31de4e643be36e (diff)
downloadcraftbukkit-af1c0139f56e444dbcaf191664829a33eb4dfd59.tar
craftbukkit-af1c0139f56e444dbcaf191664829a33eb4dfd59.tar.gz
craftbukkit-af1c0139f56e444dbcaf191664829a33eb4dfd59.tar.lz
craftbukkit-af1c0139f56e444dbcaf191664829a33eb4dfd59.tar.xz
craftbukkit-af1c0139f56e444dbcaf191664829a33eb4dfd59.zip
SPIGOT-3409: Improve performance of registering stupid amounts of permissions in plugin.yml
Diffstat (limited to 'src')
-rw-r--r--src/main/java/org/bukkit/craftbukkit/CraftServer.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index fc92b912..5eea272e 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -143,7 +143,7 @@ public final class CraftServer implements Server {
private final SimpleCommandMap commandMap = new SimpleCommandMap(this);
private final SimpleHelpMap helpMap = new SimpleHelpMap(this);
private final StandardMessenger messenger = new StandardMessenger();
- private final PluginManager pluginManager = new SimplePluginManager(this, commandMap);
+ private final SimplePluginManager pluginManager = new SimplePluginManager(this, commandMap);
protected final MinecraftServer console;
protected final DedicatedPlayerList playerList;
private final Map<String, World> worlds = new LinkedHashMap<String, World>();
@@ -246,7 +246,7 @@ public final class CraftServer implements Server {
saveCommandsConfig();
overrideAllCommandBlockCommands = commandsConfiguration.getStringList("command-block-overrides").contains("*");
- ((SimplePluginManager) pluginManager).useTimings(configuration.getBoolean("settings.plugin-profiling"));
+ pluginManager.useTimings(configuration.getBoolean("settings.plugin-profiling"));
monsterSpawn = configuration.getInt("spawn-limits.monsters");
animalSpawn = configuration.getInt("spawn-limits.animals");
waterAnimalSpawn = configuration.getInt("spawn-limits.water-animals");
@@ -352,11 +352,12 @@ public final class CraftServer implements Server {
for (Permission perm : perms) {
try {
- pluginManager.addPermission(perm);
+ pluginManager.addPermission(perm, false);
} catch (IllegalArgumentException ex) {
getLogger().log(Level.WARNING, "Plugin " + plugin.getDescription().getFullName() + " tried to register permission '" + perm.getName() + "' but it's already registered", ex);
}
}
+ pluginManager.dirtyPermissibles();
pluginManager.enablePlugin(plugin);
} catch (Throwable ex) {