diff options
author | ElgarL <ElgarL@palmergames.com> | 2012-04-06 12:53:36 +0100 |
---|---|---|
committer | ElgarL <ElgarL@palmergames.com> | 2012-04-06 12:53:36 +0100 |
commit | 43c733393c86277f55d0355d81e2ff1c196da621 (patch) | |
tree | dddbb5c46c08e6d32d8715eb50543b981189a102 /EssentialsGroupManager/src | |
parent | 006f8c3a73fd91bc87505e3108593f240e771bce (diff) | |
download | Essentials-43c733393c86277f55d0355d81e2ff1c196da621.tar Essentials-43c733393c86277f55d0355d81e2ff1c196da621.tar.gz Essentials-43c733393c86277f55d0355d81e2ff1c196da621.tar.lz Essentials-43c733393c86277f55d0355d81e2ff1c196da621.tar.xz Essentials-43c733393c86277f55d0355d81e2ff1c196da621.zip |
Remove all permission attachments when performing a manload or restart.
Diffstat (limited to 'EssentialsGroupManager/src')
3 files changed, 14 insertions, 1 deletions
diff --git a/EssentialsGroupManager/src/Changelog.txt b/EssentialsGroupManager/src/Changelog.txt index 2cfe57f62..a9355e608 100644 --- a/EssentialsGroupManager/src/Changelog.txt +++ b/EssentialsGroupManager/src/Changelog.txt @@ -164,4 +164,5 @@ v 1.9: v 2.0:
- Fix GM reporting of permission inheritance to retain the correct order. Lower inheritance groups can no longer negate a higher groups permissions.
- Fix an error I caused trying to modify an unmodifiable list when parsing '*' permissions.
- - Don't throw errors when attempting to remove permission attachments (bukkit will have already removed it).
\ No newline at end of file + - Don't throw errors when attempting to remove permission attachments (bukkit will have already removed it).
+ - Remove all permission attachments when performing a manload or restart.
\ No newline at end of file diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java index 8bd346735..d1c62d4de 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java @@ -106,6 +106,9 @@ public class GroupManager extends JavaPlugin { } WorldEvents = null; + + // Remove all attachments before clearing + BukkitPermissions.removeAllAttachments(); BukkitPermissions = null; // EXAMPLE: Custom code, here we just output some info so we can check that diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java index 6df18cb05..3b66c1eb9 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java @@ -362,6 +362,15 @@ public class BukkitPermissions { attachments.remove(player);
}
}
+
+ /**
+ * Remove all attachments in case of a restart or reload.
+ */
+ public void removeAllAttachments() {
+
+ for (Player player : attachments.keySet())
+ removeAttachment(player);
+ }
/**
* Player events tracked to cause Superperms updates
|