From 1bbeec1f75cfe4273d3782617ed04b7586b17c72 Mon Sep 17 00:00:00 2001
From: EvilSeph <evilseph@gmail.com>
Date: Fri, 20 Jan 2012 11:45:37 -0500
Subject: [PATCH] Accounted for NMS getItem() returning null in recent commit.

---
 src/main/java/net/minecraft/server/EntityTrackerEntry.java      | 1 +
 .../java/org/bukkit/craftbukkit/inventory/CraftInventory.java   | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
index 0a2a76dd27..a43ae1f91a 100644
--- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java
+++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
@@ -241,6 +241,7 @@ public class EntityTrackerEntry {
 
         if (this.tracker instanceof EntityItem) {
             EntityItem entityitem = (EntityItem) this.tracker;
+            if (entityitem.dead|| entityitem.itemStack == null) return null; // CraftBukkit
             Packet21PickupSpawn packet21pickupspawn = new Packet21PickupSpawn(entityitem);
 
             entityitem.locX = (double) packet21pickupspawn.b / 32.0D;
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java
index b5391b35c9..d4e62a2b85 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventory.java
@@ -27,7 +27,7 @@ public class CraftInventory implements org.bukkit.inventory.Inventory {
     }
 
     public ItemStack getItem(int index) {
-        return getInventory().getItem(index).id == 0 ? null : new CraftItemStack(getInventory().getItem(index));
+        return (getInventory().getItem(index) == null || getInventory().getItem(index).id == 0) ? null : new CraftItemStack(getInventory().getItem(index));
     }
 
     public ItemStack[] getContents() {