Bläddra i källkod

Fixing yet another concurrency error.

Glitchfinder 12 år sedan
förälder
incheckning
2933f80d69

+ 4 - 2
src/main/java/com/gmail/nossr50/util/blockmeta/chunkmeta/HashChunkManager.java

@@ -319,7 +319,8 @@ public class HashChunkManager implements ChunkManager {
         closeAll();
         closeAll();
         String worldName = world.getName();
         String worldName = world.getName();
 
 
-        for(String key : store.keySet()) {
+        List<String> keys = new ArrayList<String>(store.keySet());
+        for(String key : keys) {
             String[] info = key.split(",");
             String[] info = key.split(",");
             if(worldName.equals(info[0])) {
             if(worldName.equals(info[0])) {
                 int cx = 0;
                 int cx = 0;
@@ -371,7 +372,8 @@ public class HashChunkManager implements ChunkManager {
         closeAll();
         closeAll();
         String worldName = world.getName();
         String worldName = world.getName();
 
 
-        for(String key : store.keySet()) {
+        List<String> keys = new ArrayList<String>(store.keySet());
+        for(String key : keys) {
             String[] info = key.split(",");
             String[] info = key.split(",");
             if(worldName.equals(info[0])) {
             if(worldName.equals(info[0])) {
                 int cx = 0;
                 int cx = 0;