From 3607e32855790f844c6a1d21c5abaaf533113c40 Mon Sep 17 00:00:00 2001 From: NathanSweet Date: Fri, 1 Apr 2016 22:33:31 +0200 Subject: [PATCH] Fixed loading linked meshes from JSON/binary when the source mesh is in a skin. --- .../src/com/esotericsoftware/spine/SkeletonBinary.java | 1 + .../src/com/esotericsoftware/spine/SkeletonJson.java | 1 + 2 files changed, 2 insertions(+) diff --git a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/SkeletonBinary.java b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/SkeletonBinary.java index f9071f151..1b64ae437 100644 --- a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/SkeletonBinary.java +++ b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/SkeletonBinary.java @@ -189,6 +189,7 @@ public class SkeletonBinary { Skin skin = linkedMesh.skin == null ? skeletonData.getDefaultSkin() : skeletonData.findSkin(linkedMesh.skin); if (skin == null) throw new SerializationException("Skin not found: " + linkedMesh.skin); Attachment parent = skin.getAttachment(linkedMesh.slotIndex, linkedMesh.parent); + if (parent == null) throw new SerializationException("Parent mesh not found: " + linkedMesh.parent); if (linkedMesh.mesh instanceof MeshAttachment) { MeshAttachment mesh = (MeshAttachment)linkedMesh.mesh; mesh.setParentMesh((MeshAttachment)parent); diff --git a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/SkeletonJson.java b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/SkeletonJson.java index d35014f9e..76ab1d58e 100644 --- a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/SkeletonJson.java +++ b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/SkeletonJson.java @@ -203,6 +203,7 @@ public class SkeletonJson { Skin skin = linkedMesh.skin == null ? skeletonData.getDefaultSkin() : skeletonData.findSkin(linkedMesh.skin); if (skin == null) throw new SerializationException("Skin not found: " + linkedMesh.skin); Attachment parent = skin.getAttachment(linkedMesh.slotIndex, linkedMesh.parent); + if (parent == null) throw new SerializationException("Parent mesh not found: " + linkedMesh.parent); if (linkedMesh.mesh instanceof MeshAttachment) { MeshAttachment mesh = (MeshAttachment)linkedMesh.mesh; mesh.setParentMesh((MeshAttachment)parent);