2016-02-29 22:33:06 +01:00
From e8ad8786c6328c9a01462f0dd6c3c1b03473bfd1 Mon Sep 17 00:00:00 2001
2014-07-21 22:46:54 +02:00
From: md_5 <md_5@live.com.au>
Date: Mon, 18 Mar 2013 20:01:44 +1100
Subject: [PATCH] Prevent NPE in CraftSign
This commit prevents the constructor of CraftSign throwing an NPE when it cannot get the sign tile entity. Instead it will fallback to a 4 empty lined sign, and not try to do anything to those lines on .update().
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java b/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java
2015-03-24 21:45:15 +01:00
index 42a6f9a..43adfcc 100644
2014-07-21 22:46:54 +02:00
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java
2015-03-24 21:45:15 +01:00
@@ -18,6 +18,12 @@ public class CraftSign extends CraftBlockState implements Sign {
2014-07-21 22:46:54 +02:00
CraftWorld world = (CraftWorld) block.getWorld();
sign = (TileEntitySign) world.getTileEntityAt(getX(), getY(), getZ());
+ // Spigot start
+ if (sign == null) {
+ lines = new String[]{"", "", "", ""};
+ return;
+ }
+ // Spigot end
lines = new String[sign.lines.length];
2014-11-28 02:17:45 +01:00
System.arraycopy(revertComponents(sign.lines), 0, lines, 0, lines.length);
2014-07-21 22:46:54 +02:00
}
--
2016-02-29 22:33:06 +01:00
2.5.0
2014-07-21 22:46:54 +02:00