PaperMC/Spigot-Server-Patches/0233-Avoid-NPE-during-CraftBlockEntityState-load.patch
Minecrell e15167251b Add extended PaperServerListPingEvent (#980)
* Drop original implementation for old player sample API

* Add extended PaperServerListPingEvent

Add a new event that extends the original ServerListPingEvent
and allows full control of the response sent to the client.

* Implement deprecated player sample API
2018-03-22 23:19:59 -04:00

42 lines
1.7 KiB
Diff

From 52613fd6e28b47b552e1a2118326de8c45160d46 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.16.2