Skip to content

Commit dea5520

Browse files
committed
Actually thread-safe applying permissions
1 parent de83730 commit dea5520

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
--- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java
2+
+++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
3+
@@ -22,6 +_,7 @@
4+
import java.util.Map;
5+
import java.util.Set;
6+
import java.util.WeakHashMap;
7+
+import java.util.concurrent.ConcurrentHashMap;
8+
import java.util.logging.Level;
9+
import java.util.regex.Matcher;
10+
import java.util.regex.Pattern;
11+
@@ -57,8 +_,8 @@
12+
// Paper start
13+
public final Map<String, Permission> permissions = new HashMap<String, Permission>();
14+
public final Map<Boolean, Set<Permission>> defaultPerms = new LinkedHashMap<Boolean, Set<Permission>>();
15+
- public final Map<String, Map<Permissible, Boolean>> permSubs = new HashMap<String, Map<Permissible, Boolean>>();
16+
- public final Map<Boolean, Map<Permissible, Boolean>> defSubs = new HashMap<Boolean, Map<Permissible, Boolean>>();
17+
+ public final Map<String, Map<Permissible, Boolean>> permSubs = new ConcurrentHashMap<String, Map<Permissible, Boolean>>(); // ShreddedPaper - thread-safe permission manager
18+
+ public final Map<Boolean, Map<Permissible, Boolean>> defSubs = new ConcurrentHashMap<Boolean, Map<Permissible, Boolean>>(); // ShreddedPaper - thread-safe permission manager
19+
public PluginManager paperPluginManager;
20+
// Paper end
21+
private boolean useTimings = false;

0 commit comments

Comments
 (0)