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 Bukkit Changes: b999860d SPIGOT-2304: Add LootGenerateEvent CraftBukkit Changes: 77fd87e4 SPIGOT-2304: Implement LootGenerateEvent a1a705ee SPIGOT-5566: Doused campfires & fires should call EntityChangeBlockEvent 41712edd SPIGOT-5707: PersistentDataHolder not Persistent on API dropped Item
35 lines
1.3 KiB
Diff
35 lines
1.3 KiB
Diff
From 87f90f2050a86c072a3d9817d8d1f4e5a056fe41 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Fri, 18 Mar 2016 13:50:14 -0400
|
|
Subject: [PATCH] Remove Metadata on reload
|
|
|
|
Metadata is not meant to persist reload as things break badly with non primitive types
|
|
This will remove metadata on reload so it does not crash everything if a plugin uses it.
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
index 2ed74cd9fc..ddb16ca8b6 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
|
@@ -825,8 +825,18 @@ public final class CraftServer implements Server {
|
|
world.paperConfig.init(); // Paper
|
|
}
|
|
|
|
+ Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper
|
|
pluginManager.clearPlugins();
|
|
commandMap.clearCommands();
|
|
+
|
|
+ // Paper start
|
|
+ for (Plugin plugin : pluginClone) {
|
|
+ entityMetadata.removeAll(plugin);
|
|
+ worldMetadata.removeAll(plugin);
|
|
+ playerMetadata.removeAll(plugin);
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
resetRecipes();
|
|
reloadData();
|
|
org.spigotmc.SpigotConfig.registerCommands(); // Spigot
|
|
--
|
|
2.26.2
|
|
|