From ae4ac8210f5cf301cb8e44e343b9d1ccf76ae4be Mon Sep 17 00:00:00 2001 From: NathanSweet Date: Fri, 10 Jun 2016 04:14:19 +0200 Subject: [PATCH] Check default skin, fixed crash. --- .../src/com/esotericsoftware/spine/Skeleton.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Skeleton.java b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Skeleton.java index 4840ba15b..1e614a608 100644 --- a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Skeleton.java +++ b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Skeleton.java @@ -197,13 +197,11 @@ public class Skeleton { Slot slot = constraint.target; int slotIndex = slot.getData().index; Bone slotBone = slot.bone; - if (skin != null) { - for (Entry entry : skin.attachments.entries()) - if (entry.key.slotIndex == slotIndex) sortPathConstraintAttachment(entry.value, slotBone); - } + if (skin != null) sortPathConstraintAttachment(skin, slotIndex, slotBone); + if (data.defaultSkin != null && data.defaultSkin != skin) + sortPathConstraintAttachment(data.defaultSkin, slotIndex, slotBone); for (int ii = 0, nn = data.skins.size; ii < nn; ii++) - for (Entry entry : data.skins.get(i).attachments.entries()) - if (entry.key.slotIndex == slotIndex) sortPathConstraintAttachment(entry.value, slotBone); + sortPathConstraintAttachment(data.skins.get(ii), slotIndex, slotBone); Attachment attachment = slot.getAttachment(); if (attachment instanceof PathAttachment) sortPathConstraintAttachment(attachment, slotBone); @@ -244,6 +242,11 @@ public class Skeleton { sortBone(bones.get(i)); } + private void sortPathConstraintAttachment (Skin skin, int slotIndex, Bone slotBone) { + for (Entry entry : skin.attachments.entries()) + if (entry.key.slotIndex == slotIndex) sortPathConstraintAttachment(entry.value, slotBone); + } + private void sortPathConstraintAttachment (Attachment attachment, Bone slotBone) { if (!(attachment instanceof PathAttachment)) return; int[] pathBones = ((PathAttachment)attachment).getBones();