From 5c985d814b5eb048ac1bad08ef85f3a2ea412f80 Mon Sep 17 00:00:00 2001 From: md_5 Date: Fri, 18 Sep 2015 10:33:56 +1000 Subject: Speed up permission recalculation. Based on ideas in PR #102, but rewritten for correctness. --- src/main/java/org/bukkit/permissions/Permission.java | 1 + src/main/java/org/bukkit/plugin/SimplePluginManager.java | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'src/main') diff --git a/src/main/java/org/bukkit/permissions/Permission.java b/src/main/java/org/bukkit/permissions/Permission.java index 14ec7099..0184f47c 100644 --- a/src/main/java/org/bukkit/permissions/Permission.java +++ b/src/main/java/org/bukkit/permissions/Permission.java @@ -52,6 +52,7 @@ public class Permission { } public Permission(String name, String description, PermissionDefault defaultValue, Map children) { + Validate.notNull(name, "Name cannot be null"); this.name = name; this.description = (description == null) ? "" : description; diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java index e51658df..5a9e50db 100644 --- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java +++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java @@ -615,7 +615,7 @@ public final class SimplePluginManager implements PluginManager { } public void recalculatePermissionDefaults(Permission perm) { - if (permissions.containsValue(perm)) { + if (perm != null && permissions.containsKey(perm.getName().toLowerCase())) { defaultPerms.get(true).remove(perm); defaultPerms.get(false).remove(perm); -- cgit v1.2.3