Browse Source

Fixed loading linked meshes from JSON/binary when the source mesh is in a skin.

NathanSweet 9 years ago
parent
commit
3607e32855

+ 1 - 0
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);

+ 1 - 0
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);