summaryrefslogtreecommitdiffstats
path: root/nms-patches/ItemSkull.patch
blob: da4ce8a1baf6615cd440d799d9f2d5d4eed43887 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
--- a/net/minecraft/server/ItemSkull.java
+++ b/net/minecraft/server/ItemSkull.java
@@ -120,6 +120,15 @@
             nbttagcompound.set("SkullOwner", GameProfileSerializer.serialize(new NBTTagCompound(), gameprofile));
             return true;
         } else {
+            // CraftBukkit start
+            NBTTagList textures = nbttagcompound.getCompound("SkullOwner").getCompound("Properties").getList("textures", 10); // Safe due to method contracts
+            for (int i = 0; i < textures.size(); i++) {
+                if (textures.get(i) instanceof NBTTagCompound && !((NBTTagCompound) textures.get(i)).hasKeyOfType("Signature", 8) && ((NBTTagCompound) textures.get(i)).getString("Value").trim().isEmpty()) {
+                    nbttagcompound.remove("SkullOwner");
+                    break;
+                }
+            }
+            // CraftBukkit end
             return false;
         }
     }