diff options
author | Jadon Fowler <ph4seaber@gmail.com> | 2016-06-18 04:25:50 -0700 |
---|---|---|
committer | Jadon Fowler <ph4sesaber@gmail.com> | 2016-06-18 04:31:44 -0700 |
commit | 63839165bc6923006d7a92b9b1fc5abc88dd9dfe (patch) | |
tree | 6b213837633ee2759d9f37d0395c48ccfd0cc7ea | |
parent | 9856d8a18395617ffa0ecc05dcbf9255e6a66d12 (diff) | |
download | craftbukkit-63839165bc6923006d7a92b9b1fc5abc88dd9dfe.tar craftbukkit-63839165bc6923006d7a92b9b1fc5abc88dd9dfe.tar.gz craftbukkit-63839165bc6923006d7a92b9b1fc5abc88dd9dfe.tar.lz craftbukkit-63839165bc6923006d7a92b9b1fc5abc88dd9dfe.tar.xz craftbukkit-63839165bc6923006d7a92b9b1fc5abc88dd9dfe.zip |
Fix infinite loop when saving chunks
Running `/save-all flush` would start an infinite loop that prints:
ThreadedAnvilChunkStorage (world): All chunks are saved
-rw-r--r-- | nms-patches/ChunkRegionLoader.patch | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/nms-patches/ChunkRegionLoader.patch b/nms-patches/ChunkRegionLoader.patch index fc721911..55025dfe 100644 --- a/nms-patches/ChunkRegionLoader.patch +++ b/nms-patches/ChunkRegionLoader.patch @@ -106,7 +106,15 @@ } 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")); } @@ -120,7 +128,7 @@ NBTTagList nbttaglist1 = nbttagcompound.getList("Entities", 10); if (nbttaglist1 != null) { -@@ -369,7 +428,7 @@ +@@ -369,7 +429,7 @@ } } @@ -129,7 +137,7 @@ } @Nullable -@@ -397,14 +456,20 @@ +@@ -397,14 +457,20 @@ } @Nullable @@ -151,7 +159,7 @@ return null; } else { if (nbttagcompound.hasKeyOfType("Passengers", 9)) { -@@ -433,8 +498,14 @@ +@@ -433,8 +499,14 @@ } } |