summaryrefslogtreecommitdiffstats
path: root/nms-patches/ItemSkull.patch
blob: 76f59f26b8b06f00956b3cb81f5df772959d63ce (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
@@ -124,6 +124,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;
         }
     }