diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index 69f81ca18d..808860edd9 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -117,8 +117,8 @@ public final class ItemStack {
         }
 
         if (nbttagcompound.hasKey("tag")) {
-            // CraftBukkit - clear name from compound and make defensive copy as this data may be coming from the save thread
-            this.tag = (NBTTagCompound) nbttagcompound.getCompound("tag").clone().setName("");
+            // CraftBukkit - make defensive copy as this data may be coming from the save thread
+            this.tag = (NBTTagCompound) nbttagcompound.getCompound("tag").clone();
         }
     }
 
@@ -334,6 +334,11 @@ public final class ItemStack {
     }
 
     public void setTag(NBTTagCompound nbttagcompound) {
+        // CraftBukkit start - Set compound name to "tag," remove discrepancy
+        if (nbttagcompound != null) {
+            nbttagcompound.setName("tag");
+        }
+        // CraftBukkit end
         this.tag = nbttagcompound;
     }
 
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
index c70d41bd63..51d5beb77b 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java
@@ -191,10 +191,11 @@ public final class CraftItemStack extends ItemStack {
         if (item == null) {
             return false;
         }
-        if (item.tag != null) {
-            return true;
+
+        if (item.tag == null) {
+            item.setTag(new NBTTagCompound("tag"));
         }
-        item.tag = new NBTTagCompound();
+
         return true;
     }
 
@@ -350,7 +351,7 @@ public final class CraftItemStack extends ItemStack {
             return false;
         }
 
-        NBTTagCompound tag = new NBTTagCompound();
+        NBTTagCompound tag = new NBTTagCompound("tag");
         item.setTag(tag);
 
         ((CraftMetaItem) itemMeta).applyToItem(tag);