Fix infinite loop when saving chunks

Running `/save-all flush` would start an infinite loop that prints:
    ThreadedAnvilChunkStorage (world): All chunks are saved

By: Jadon Fowler <ph4seaber@gmail.com>
This commit is contained in:
CraftBukkit/Spigot 2016-06-18 04:25:50 -07:00
parent b62f1bfe83
commit 0628968019

View File

@ -106,7 +106,15 @@
} }
public void b(World world, Chunk chunk) throws IOException {} public void b(World world, Chunk chunk) throws IOException {}
@@ -326,6 +378,13 @@ @@ -149,6 +201,7 @@
if (this.c()) {
continue;
}
+ break; // CraftBukkit - Fix infinite loop when saving chunks
}
} finally {
this.f = false;
@@ -326,6 +379,13 @@
chunk.a(nbttagcompound.getByteArray("Biomes")); chunk.a(nbttagcompound.getByteArray("Biomes"));
} }
@ -120,7 +128,7 @@
NBTTagList nbttaglist1 = nbttagcompound.getList("Entities", 10); NBTTagList nbttaglist1 = nbttagcompound.getList("Entities", 10);
if (nbttaglist1 != null) { if (nbttaglist1 != null) {
@@ -369,7 +428,7 @@ @@ -369,7 +429,7 @@
} }
} }
@ -129,7 +137,7 @@
} }
@Nullable @Nullable
@@ -397,14 +456,20 @@ @@ -397,14 +457,20 @@
} }
@Nullable @Nullable
@ -151,7 +159,7 @@
return null; return null;
} else { } else {
if (nbttagcompound.hasKeyOfType("Passengers", 9)) { if (nbttagcompound.hasKeyOfType("Passengers", 9)) {
@@ -433,8 +498,14 @@ @@ -433,8 +499,14 @@
} }
} }