From bdcc5228976c2eaa51a0841d2c6d7eac1ba1e4d4 Mon Sep 17 00:00:00 2001 From: bm01 Date: Wed, 27 Jun 2012 20:39:54 +0200 Subject: [PATCH] Fixed ConcurrentModificationException on world unload --- Changelog.txt | 3 ++- .../gmail/nossr50/util/blockmeta/HashChunkletManager.java | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Changelog.txt b/Changelog.txt index 23862359d..fa9bd7f6f 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -11,7 +11,8 @@ Version 1.3.10-dev + Added permission node for Iron Grip ability (mcmmo.ability.unarmed.irongrip) + Added ability for custom blocks to drop a range of items. + Added Ability API functions - + Added 50% & 150% XP boost perks + + Added 50% & 150% XP boost perks + = Fixed ConcurrentModificationException on world unload = Fixed players never being removed from memory (memory leak) = Fixed admin chat being seen by everyone = Fixed issue with UTFDataFormatException occurring on occasion when trying to load Chunklets diff --git a/src/main/java/com/gmail/nossr50/util/blockmeta/HashChunkletManager.java b/src/main/java/com/gmail/nossr50/util/blockmeta/HashChunkletManager.java index c878fcb0c..0f277947f 100644 --- a/src/main/java/com/gmail/nossr50/util/blockmeta/HashChunkletManager.java +++ b/src/main/java/com/gmail/nossr50/util/blockmeta/HashChunkletManager.java @@ -10,6 +10,7 @@ import java.io.ObjectOutputStream; import java.io.StreamCorruptedException; import java.io.UTFDataFormatException; import java.util.HashMap; +import java.util.Iterator; import org.bukkit.Bukkit; import org.bukkit.Chunk; @@ -86,10 +87,10 @@ public class HashChunkletManager implements ChunkletManager { String worldName = world.getName(); - for(String key : store.keySet()) { - String tempWorldName = key.split(",")[0]; + for(Iterator it = store.keySet().iterator() ; it.hasNext() ; ) { + String tempWorldName = it.next().split(",")[0]; if(tempWorldName.equals(worldName)) { - store.remove(key); + it.remove(); } } }