Archiviert
13
0
Dieses Repository wurde am 2024-12-25 archiviert. Du kannst Dateien ansehen und es klonen, aber nicht pushen oder Issues/Pull-Requests öffnen.
Paper-Old/Spigot-Server-Patches/0235-Avoid-NPE-during-CraftBlockEntityState-load.patch
2017-10-06 04:39:34 +01:00

43 Zeilen
1.7 KiB
Diff

From 4172ca19330956828839f51a3fb94d2e7c8ddcef Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc>
Date: Mon, 18 Sep 2017 13:38:40 -0700
Subject: [PATCH] Avoid NPE during CraftBlockEntityState load
diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java
index 54b719d91..3f2c5b2d5 100644
--- a/src/main/java/net/minecraft/server/TileEntitySign.java
+++ b/src/main/java/net/minecraft/server/TileEntitySign.java
@@ -60,7 +60,7 @@ public class TileEntitySign extends TileEntity {
}
public MinecraftServer C_() {
- return TileEntitySign.this.world.getMinecraftServer();
+ return MinecraftServer.getServer(); // Paper - world may be null
}
};
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
index 266f87d7f..22dcaea72 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
@@ -24,6 +24,7 @@ public class CraftBlockEntityState<T extends TileEntity> extends CraftBlockState
// copy tile entity data:
this.snapshot = this.createSnapshot(tileEntity);
+ if(this.snapshot != null) // Paper - avoid NPE during load
this.load(snapshot);
}
@@ -35,6 +36,7 @@ public class CraftBlockEntityState<T extends TileEntity> extends CraftBlockState
// copy tile entity data:
this.snapshot = this.createSnapshot(tileEntity);
+ if(this.snapshot != null) // Paper - avoid NPE during load
this.load(snapshot);
}
--
2.14.2