summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2014-04-18 06:46:46 +0100
committerKHobbits <rob@khobbits.co.uk>2014-04-18 06:48:14 +0100
commitb6d6b24796d1bddcad419a93a44806e59359a3e2 (patch)
tree016151342b859ac9a168f00a0e18b151ce4853e1
parentb6c0871daa66fffd9fe1c5acad584ed84228df61 (diff)
downloadEssentials-b6d6b24796d1bddcad419a93a44806e59359a3e2.tar
Essentials-b6d6b24796d1bddcad419a93a44806e59359a3e2.tar.gz
Essentials-b6d6b24796d1bddcad419a93a44806e59359a3e2.tar.lz
Essentials-b6d6b24796d1bddcad419a93a44806e59359a3e2.tar.xz
Essentials-b6d6b24796d1bddcad419a93a44806e59359a3e2.zip
Only write to UUIDMap if the entry doesn't exist.
-rw-r--r--Essentials/src/com/earth2me/essentials/UUIDMap.java8
-rw-r--r--Essentials/src/com/earth2me/essentials/UserMap.java8
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<String> 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<UUID, User> 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();
+ }
}
}
}