summaryrefslogtreecommitdiffstats
path: root/EssentialsGroupManager
diff options
context:
space:
mode:
Diffstat (limited to 'EssentialsGroupManager')
-rw-r--r--EssentialsGroupManager/src/Changelog.txt3
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java8
2 files changed, 7 insertions, 4 deletions
diff --git a/EssentialsGroupManager/src/Changelog.txt b/EssentialsGroupManager/src/Changelog.txt
index 849f11e95..bc050c97b 100644
--- a/EssentialsGroupManager/src/Changelog.txt
+++ b/EssentialsGroupManager/src/Changelog.txt
@@ -231,4 +231,5 @@ v2.1:
- Set a default mirror map if none is found in the config.
- Fix clones forgetting sub groups.
- Prevent players who have never logged in before from taking over existing accounts.
- - Added metrics. \ No newline at end of file
+ - Added metrics.
+ - Prevent GM's own permission tests from allowing inherited permissions to override inherited negations (caused when we added the exception override for sub groups). \ No newline at end of file
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java
index 07a846791..d8d12d836 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java
@@ -1072,9 +1072,11 @@ public class AnjoPermissionsHandler extends PermissionsReaderInterface {
return resultNow;
}
- // Negation found so store for later
- // as we need to continue looking for an Exception.
- result = resultNow;
+ if (!result.resultType.equals(PermissionCheckResult.Type.NEGATION)) {
+ // No Negation found so store for later
+ // as we need to continue looking for an Exception.
+ result = resultNow;
+ }
}
for (String sonName : now.getInherits()) {