From 2c85e03e20ed5a234370355d90bab04c3d9ff657 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 23 Sep 2018 21:22:57 -0400 Subject: [PATCH] Updated Upstream (CraftBukkit/Spigot) Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing CraftBukkit Changes: dcb43ef8 MC-136886: locate command loads chunks without needing to. Spigot Changes: f823ac54 Rebuild patches --- ...arseException-in-Entity-and-TE-names.patch | 33 ++++++++++--------- ...ntal-ASM-support-for-Java-11-plugins.patch | 4 +-- ...n-t-load-chunks-looking-for-features.patch | 21 ------------ work/CraftBukkit | 2 +- work/Spigot | 2 +- 5 files changed, 22 insertions(+), 40 deletions(-) delete mode 100644 Spigot-Server-Patches/MC-136886-Don-t-load-chunks-looking-for-features.patch diff --git a/Spigot-Server-Patches/Catch-JsonParseException-in-Entity-and-TE-names.patch b/Spigot-Server-Patches/Catch-JsonParseException-in-Entity-and-TE-names.patch index 78ae1cbc0..67e4a0ceb 100644 --- a/Spigot-Server-Patches/Catch-JsonParseException-in-Entity-and-TE-names.patch +++ b/Spigot-Server-Patches/Catch-JsonParseException-in-Entity-and-TE-names.patch @@ -13,7 +13,7 @@ Shulkers) may need to be changed in order for it to re-save properly No more crashing though. diff --git a/src/main/java/net/minecraft/server/CommandBlockListenerAbstract.java b/src/main/java/net/minecraft/server/CommandBlockListenerAbstract.java -index 729859d13..2a1dffbf4 100644 +index 729859d132..2a1dffbf48 100644 --- a/src/main/java/net/minecraft/server/CommandBlockListenerAbstract.java +++ b/src/main/java/net/minecraft/server/CommandBlockListenerAbstract.java @@ -0,0 +0,0 @@ public abstract class CommandBlockListenerAbstract implements ICommandListener { @@ -26,7 +26,7 @@ index 729859d13..2a1dffbf4 100644 if (nbttagcompound.hasKeyOfType("TrackOutput", 1)) { diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index f6c43bab4..8c2ce7006 100644 +index f6c43bab46..8c2ce70060 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -0,0 +0,0 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke @@ -39,7 +39,7 @@ index f6c43bab4..8c2ce7006 100644 this.setCustomNameVisible(nbttagcompound.getBoolean("CustomNameVisible")); diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java -index f7856897f..a50224734 100644 +index f7856897f6..e11f439ff1 100644 --- a/src/main/java/net/minecraft/server/MCUtil.java +++ b/src/main/java/net/minecraft/server/MCUtil.java @@ -0,0 +0,0 @@ public final class MCUtil { @@ -49,18 +49,21 @@ index f7856897f..a50224734 100644 + + @Nullable + public static IChatBaseComponent getBaseComponentFromNbt(String key, NBTTagCompound compound) { -+ IChatBaseComponent component = null; ++ if (!compound.hasKey(key)) { ++ return null; ++ } ++ String string = compound.getString(key); + try { -+ component = IChatBaseComponent.ChatSerializer.a(compound.getString("CustomName")); -+ } catch (com.google.gson.JsonParseException ignored) { -+ org.bukkit.Bukkit.getLogger().warning("Unable to load " + key + " from " + compound); ++ return IChatBaseComponent.ChatSerializer.jsonToComponent(string); ++ } catch (com.google.gson.JsonParseException e) { ++ org.bukkit.Bukkit.getLogger().warning("Unable to parse " + key + " from " + compound +": " + e.getMessage()); + } + -+ return component; ++ return null; + } } diff --git a/src/main/java/net/minecraft/server/TileEntityBanner.java b/src/main/java/net/minecraft/server/TileEntityBanner.java -index b4fae0d30..364a9fa7a 100644 +index b4fae0d307..364a9fa7a9 100644 --- a/src/main/java/net/minecraft/server/TileEntityBanner.java +++ b/src/main/java/net/minecraft/server/TileEntityBanner.java @@ -0,0 +0,0 @@ public class TileEntityBanner extends TileEntity implements INamableTileEntity { @@ -73,7 +76,7 @@ index b4fae0d30..364a9fa7a 100644 if (this.hasWorld()) { diff --git a/src/main/java/net/minecraft/server/TileEntityBrewingStand.java b/src/main/java/net/minecraft/server/TileEntityBrewingStand.java -index 480faa66e..f3ddb86d0 100644 +index 480faa66e4..f3ddb86d04 100644 --- a/src/main/java/net/minecraft/server/TileEntityBrewingStand.java +++ b/src/main/java/net/minecraft/server/TileEntityBrewingStand.java @@ -0,0 +0,0 @@ public class TileEntityBrewingStand extends TileEntityContainer implements IWorl @@ -86,7 +89,7 @@ index 480faa66e..f3ddb86d0 100644 this.fuelLevel = nbttagcompound.getByte("Fuel"); diff --git a/src/main/java/net/minecraft/server/TileEntityChest.java b/src/main/java/net/minecraft/server/TileEntityChest.java -index 7594c16e9..803793072 100644 +index 7594c16e99..8037930727 100644 --- a/src/main/java/net/minecraft/server/TileEntityChest.java +++ b/src/main/java/net/minecraft/server/TileEntityChest.java @@ -0,0 +0,0 @@ public class TileEntityChest extends TileEntityLootable { // Paper - Remove ITic @@ -99,7 +102,7 @@ index 7594c16e9..803793072 100644 } diff --git a/src/main/java/net/minecraft/server/TileEntityDispenser.java b/src/main/java/net/minecraft/server/TileEntityDispenser.java -index ddd2e0eb0..21bd156e9 100644 +index ddd2e0eb0b..21bd156e91 100644 --- a/src/main/java/net/minecraft/server/TileEntityDispenser.java +++ b/src/main/java/net/minecraft/server/TileEntityDispenser.java @@ -0,0 +0,0 @@ public class TileEntityDispenser extends TileEntityLootable { @@ -112,7 +115,7 @@ index ddd2e0eb0..21bd156e9 100644 } diff --git a/src/main/java/net/minecraft/server/TileEntityFurnace.java b/src/main/java/net/minecraft/server/TileEntityFurnace.java -index a537d35b7..f6bc6403f 100644 +index a537d35b73..f6bc6403fb 100644 --- a/src/main/java/net/minecraft/server/TileEntityFurnace.java +++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java @@ -0,0 +0,0 @@ public class TileEntityFurnace extends TileEntityContainer implements IWorldInve @@ -125,7 +128,7 @@ index a537d35b7..f6bc6403f 100644 // Paper start - cook speed API diff --git a/src/main/java/net/minecraft/server/TileEntityHopper.java b/src/main/java/net/minecraft/server/TileEntityHopper.java -index a8cf160fe..c56422170 100644 +index a8cf160fe4..c56422170c 100644 --- a/src/main/java/net/minecraft/server/TileEntityHopper.java +++ b/src/main/java/net/minecraft/server/TileEntityHopper.java @@ -0,0 +0,0 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi @@ -138,7 +141,7 @@ index a8cf160fe..c56422170 100644 this.f = nbttagcompound.getInt("TransferCooldown"); diff --git a/src/main/java/net/minecraft/server/TileEntityShulkerBox.java b/src/main/java/net/minecraft/server/TileEntityShulkerBox.java -index df9a30560..65a685452 100644 +index df9a30560c..65a6854521 100644 --- a/src/main/java/net/minecraft/server/TileEntityShulkerBox.java +++ b/src/main/java/net/minecraft/server/TileEntityShulkerBox.java @@ -0,0 +0,0 @@ public class TileEntityShulkerBox extends TileEntityLootable implements IWorldIn diff --git a/Spigot-Server-Patches/Enable-experimental-ASM-support-for-Java-11-plugins.patch b/Spigot-Server-Patches/Enable-experimental-ASM-support-for-Java-11-plugins.patch index 67b6e9691..ff4acd8d1 100644 --- a/Spigot-Server-Patches/Enable-experimental-ASM-support-for-Java-11-plugins.patch +++ b/Spigot-Server-Patches/Enable-experimental-ASM-support-for-Java-11-plugins.patch @@ -16,7 +16,7 @@ experimental API when required, so we check the class version first. This should be removed as soon as ASM API 7 is stable. diff --git a/pom.xml b/pom.xml -index 1e7d2b550..6d8b27e92 100644 +index 1e7d2b5506..6d8b27e927 100644 --- a/pom.xml +++ b/pom.xml @@ -0,0 +0,0 @@ @@ -29,7 +29,7 @@ index 1e7d2b550..6d8b27e92 100644 diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index d172a1aeb..7f2a73d6f 100644 +index d172a1aebc..7f2a73d6f8 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java @@ -0,0 +0,0 @@ public class Commodore diff --git a/Spigot-Server-Patches/MC-136886-Don-t-load-chunks-looking-for-features.patch b/Spigot-Server-Patches/MC-136886-Don-t-load-chunks-looking-for-features.patch deleted file mode 100644 index 6ad6936df..000000000 --- a/Spigot-Server-Patches/MC-136886-Don-t-load-chunks-looking-for-features.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Aikar -Date: Thu, 13 Sep 2018 22:26:54 -0400 -Subject: [PATCH] MC-136886: Don't load chunks looking for features - -I'm sure a few servers have crashed due to this. - -diff --git a/src/main/java/net/minecraft/server/StructureGenerator.java b/src/main/java/net/minecraft/server/StructureGenerator.java -index 6c2899e84d..075011748b 100644 ---- a/src/main/java/net/minecraft/server/StructureGenerator.java -+++ b/src/main/java/net/minecraft/server/StructureGenerator.java -@@ -0,0 +0,0 @@ public abstract class StructureGenerator - return structurestart; - } else { - ChunkCoordIntPair chunkcoordintpair = new ChunkCoordIntPair(i); -- IChunkAccess ichunkaccess = generatoraccess.getChunkProvider().a(chunkcoordintpair.x, chunkcoordintpair.z, false); -+ IChunkAccess ichunkaccess = generatoraccess.getChunkProvider().getChunkAt(chunkcoordintpair.x, chunkcoordintpair.z, false, false); // Paper - don't load chunks - - if (ichunkaccess != null) { - structurestart = ichunkaccess.a(this.a()); --- \ No newline at end of file diff --git a/work/CraftBukkit b/work/CraftBukkit index 7d506c6cd..dcb43ef83 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit 7d506c6cd759646477e4d8dc8353b995d36aaa8c +Subproject commit dcb43ef83dd0dc8b26e9923eaeed82b659ab5780 diff --git a/work/Spigot b/work/Spigot index 68acb93f5..f823ac54b 160000 --- a/work/Spigot +++ b/work/Spigot @@ -1 +1 @@ -Subproject commit 68acb93f56e6737f20a870264bd3e2c44efeed76 +Subproject commit f823ac54b178bd043f126507996ba57ca38f0ecf