From 1cf0ebbd7f120c0b8d421cc459f2d5a1386d82dc Mon Sep 17 00:00:00 2001 From: snowleo Date: Mon, 10 Sep 2012 20:49:07 +0200 Subject: Thread safety for GM --- .../src/org/anjocaido/groupmanager/data/GroupVariables.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'EssentialsGroupManager/src/org/anjocaido/groupmanager/data/GroupVariables.java') diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/GroupVariables.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/GroupVariables.java index e08d1db7d..588d50116 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/GroupVariables.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/data/GroupVariables.java @@ -26,7 +26,8 @@ public class GroupVariables extends Variables implements Cloneable { public GroupVariables(Group owner, Map varList) { super(owner); - variables = varList; + variables.clear(); + variables.putAll(varList); if (variables.get("prefix") == null) { variables.put("prefix", ""); owner.flagAsChanged(); @@ -54,9 +55,11 @@ public class GroupVariables extends Variables implements Cloneable { protected GroupVariables clone(Group newOwner) { GroupVariables clone = new GroupVariables(newOwner); + synchronized(variables) { for (String key : variables.keySet()) { clone.variables.put(key, variables.get(key)); } + } newOwner.flagAsChanged(); return clone; } -- cgit v1.2.3