From 11941cfe0bebf19960d72c5d84d60b5e3c6c2b9e Mon Sep 17 00:00:00 2001 From: badlogic Date: Wed, 10 Aug 2016 11:15:48 +0200 Subject: [PATCH] [c] Proper fix for #666, VertexAttachment#verticesCount means #vertices for box and path attachment, but means something else for mesh attachments. --- spine-c/src/spine/SkeletonJson.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/spine-c/src/spine/SkeletonJson.c b/spine-c/src/spine/SkeletonJson.c index d7bdceaef..04afac170 100644 --- a/spine-c/src/spine/SkeletonJson.c +++ b/spine-c/src/spine/SkeletonJson.c @@ -944,7 +944,9 @@ spSkeletonData* spSkeletonJson_readSkeletonData (spSkeletonJson* self, const cha } case SP_ATTACHMENT_BOUNDING_BOX: { spBoundingBoxAttachment* box = SUB_CAST(spBoundingBoxAttachment, attachment); - _readVertices(self, attachmentMap, SUPER(box), Json_getInt(attachmentMap, "vertexCount", 0) << 1); + int vertexCount = Json_getInt(attachmentMap, "vertexCount", 0) << 1; + _readVertices(self, attachmentMap, SUPER(box), vertexCount); + box->super.verticesCount = vertexCount; spAttachmentLoader_configureAttachment(self->attachmentLoader, attachment); break; } @@ -955,6 +957,7 @@ spSkeletonData* spSkeletonJson_readSkeletonData (spSkeletonJson* self, const cha path->constantSpeed = Json_getInt(attachmentMap, "constantSpeed", 1); vertexCount = Json_getInt(attachmentMap, "vertexCount", 0); _readVertices(self, attachmentMap, SUPER(path), vertexCount << 1); + path->super.verticesCount = vertexCount; path->lengthsLength = vertexCount / 3; path->lengths = MALLOC(float, path->lengthsLength);