소스 검색

Fixes possible NPE when a furnace is destroyed while someone is still
viewing it.

GJ 12 년 전
부모
커밋
9dac898c1c
1개의 변경된 파일10개의 추가작업 그리고 0개의 파일을 삭제
  1. 10 0
      src/main/java/com/gmail/nossr50/listeners/InventoryListener.java

+ 10 - 0
src/main/java/com/gmail/nossr50/listeners/InventoryListener.java

@@ -32,6 +32,11 @@ public class InventoryListener implements Listener{
         if (inventoryType == InventoryType.FURNACE) {
             FurnaceInventory inventory = (FurnaceInventory) event.getInventory();
             Furnace furnace = inventory.getHolder();
+
+            if (furnace == null) {
+                return;
+            }
+
             Block furnaceBlock = furnace.getBlock();
 
             if (furnace.getBurnTime() == 0 && !plugin.furnaceIsTracked(furnaceBlock)) {
@@ -47,6 +52,11 @@ public class InventoryListener implements Listener{
         if (inventoryType == InventoryType.FURNACE) {
             FurnaceInventory inventory = (FurnaceInventory) event.getInventory();
             Furnace furnace = inventory.getHolder();
+
+            if (furnace == null) {
+                return;
+            }
+
             Block furnaceBlock = furnace.getBlock();
 
             if (furnace.getBurnTime() == 0 && plugin.furnaceIsTracked(furnaceBlock)) {