From 12b0bf79832042c6183ed88d38241a5b16a8fdbc Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Mon, 23 Jul 2018 10:24:51 +0100 Subject: [PATCH] Avoid ArithmeticException should server be stopped before worlds are loaded Our changes for the spawn radius have the potential to throw an ArithmeticException should the server be stopped before we've loaded worlds, we check if the server is running earlier to check if we should even consider attempting to load chunks, which would cause us to, 1) not load chunks anyways, as we're disabled; 2) throw an ArithmeticException due to us expecting that we're going to be loading more than 0 chunks. --- ...gurable-Keep-Spawn-Loaded-range-per-world.patch | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Spigot-Server-Patches/0095-Configurable-Keep-Spawn-Loaded-range-per-world.patch b/Spigot-Server-Patches/0095-Configurable-Keep-Spawn-Loaded-range-per-world.patch index 8f00c80c1..213fe3ea6 100644 --- a/Spigot-Server-Patches/0095-Configurable-Keep-Spawn-Loaded-range-per-world.patch +++ b/Spigot-Server-Patches/0095-Configurable-Keep-Spawn-Loaded-range-per-world.patch @@ -1,4 +1,4 @@ -From 47ce849db0e23612ca6013dafefca6cfa5129b3d Mon Sep 17 00:00:00 2001 +From 988ae523c43ece4e6e69d0bbd13d0ceb3f72c013 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 13 Sep 2014 23:14:43 -0400 Subject: [PATCH] Configurable Keep Spawn Loaded range per world @@ -6,7 +6,7 @@ Subject: [PATCH] Configurable Keep Spawn Loaded range per world This lets you disable it for some worlds and lower it for others. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index eb09be512..6ac58e5ec 100644 +index eb09be5126..6ac58e5ec5 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -232,4 +232,10 @@ public class PaperWorldConfig { @@ -21,7 +21,7 @@ index eb09be512..6ac58e5ec 100644 + } } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 96d31f874..7fb0a58f9 100644 +index 96d31f8749..071a1e30f7 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -485,13 +485,21 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati @@ -38,7 +38,7 @@ index 96d31f874..7fb0a58f9 100644 arraylist.add(new ChunkCoordIntPair(blockposition.getX() + i >> 4, blockposition.getZ() + j >> 4)); } + } // Paper -+ if (true) { // Paper ++ if (this.isRunning()) { // Paper + int expected = arraylist.size(); // Paper + @@ -63,7 +63,7 @@ index 96d31f874..7fb0a58f9 100644 } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 6ec1ee26d..a4c8e62e2 100644 +index 6ec1ee26dc..a4c8e62e22 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -2825,8 +2825,9 @@ public abstract class World implements GeneratorAccess, IIBlockAccess, AutoClose @@ -78,7 +78,7 @@ index 6ec1ee26d..a4c8e62e2 100644 public void a(Packet packet) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 62872675d..7cb795dd8 100644 +index 62872675d9..7cb795dd89 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -990,7 +990,7 @@ public final class CraftServer implements Server { @@ -91,7 +91,7 @@ index 62872675d..7cb795dd8 100644 for (int j = -short1; j <= short1; j += 16) { for (int k = -short1; k <= short1; k += 16) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 0b2a9d09d..ff3558363 100644 +index 0b2a9d09df..ff3558363b 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1285,8 +1285,9 @@ public class CraftWorld implements World {