From ef91dacfe85a1121500b2c3bab77e4fd226771fb Mon Sep 17 00:00:00 2001 From: Bukkit/Spigot Date: Fri, 18 Sep 2015 10:33:56 +1000 Subject: [PATCH] Speed up permission recalculation. Based on ideas in PR #102, but rewritten for correctness. By: md_5 --- paper-api/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(-) diff --git a/paper-api/src/main/java/org/bukkit/permissions/Permission.java b/paper-api/src/main/java/org/bukkit/permissions/Permission.java index 14ec7099d..0184f47c7 100644 --- a/paper-api/src/main/java/org/bukkit/permissions/Permission.java +++ b/paper-api/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/paper-api/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/paper-api/src/main/java/org/bukkit/plugin/SimplePluginManager.java index e51658df5..5a9e50dbc 100644 --- a/paper-api/src/main/java/org/bukkit/plugin/SimplePluginManager.java +++ b/paper-api/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);