From b6d6b24796d1bddcad419a93a44806e59359a3e2 Mon Sep 17 00:00:00 2001 From: KHobbits Date: Fri, 18 Apr 2014 06:46:46 +0100 Subject: Only write to UUIDMap if the entry doesn't exist. --- Essentials/src/com/earth2me/essentials/UUIDMap.java | 8 ++++++-- Essentials/src/com/earth2me/essentials/UserMap.java | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/UUIDMap.java b/Essentials/src/com/earth2me/essentials/UUIDMap.java index ba712752b..ddc2028c9 100644 --- a/Essentials/src/com/earth2me/essentials/UUIDMap.java +++ b/Essentials/src/com/earth2me/essentials/UUIDMap.java @@ -72,7 +72,11 @@ public class UUIDMap } else { - history.get(uuid).add(name); + final ArrayList list = history.get(uuid); + if (!list.contains(name)) + { + list.add(name); + } } } } @@ -145,7 +149,7 @@ public class UUIDMap @Override public void run() { - synchronized (location) + synchronized (pendingDiskWrites) { if (pendingDiskWrites.get() > 1) { diff --git a/Essentials/src/com/earth2me/essentials/UserMap.java b/Essentials/src/com/earth2me/essentials/UserMap.java index 4983ebcb2..a24e35a03 100644 --- a/Essentials/src/com/earth2me/essentials/UserMap.java +++ b/Essentials/src/com/earth2me/essentials/UserMap.java @@ -144,8 +144,12 @@ public class UserMap extends CacheLoader implements IConf keys.add(uuid); if (name != null && name.length() > 0) { - names.put(StringUtil.sanitizeFileName(name), uuid); - uuidMap.writeUUIDMap(); + final String keyName = StringUtil.sanitizeFileName(name); + if (!names.containsKey(keyName)) + { + names.put(keyName, uuid); + uuidMap.writeUUIDMap(); + } } } } -- cgit v1.2.3