From d8d5405ba3a3735d1a5fb54e4515e16948211648 Mon Sep 17 00:00:00 2001 From: NathanSweet Date: Tue, 3 Nov 2015 03:03:27 +0100 Subject: [PATCH] Fixed JSON parsing for all locales. http://esotericsoftware.com/forum/Spine-c-runtime-strtod-Problem-5380 --- spine-c/src/spine/SkeletonJson.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/spine-c/src/spine/SkeletonJson.c b/spine-c/src/spine/SkeletonJson.c index 84fd99767..f6af78a08 100644 --- a/spine-c/src/spine/SkeletonJson.c +++ b/spine-c/src/spine/SkeletonJson.c @@ -31,6 +31,7 @@ #include #include +#include #include "Json.h" #include #include @@ -421,11 +422,14 @@ spSkeletonData* spSkeletonJson_readSkeletonData (spSkeletonJson* self, const cha int i, ii; spSkeletonData* skeletonData; Json *root, *skeleton, *bones, *boneMap, *ik, *slots, *skins, *animations, *events; + char* oldLocale; FREE(self->error); CONST_CAST(char*, self->error) = 0; + oldLocale = setlocale(LC_NUMERIC, "C"); root = Json_create(json); + setlocale(LC_NUMERIC, oldLocale); if (!root) { _spSkeletonJson_setError(self, 0, "Invalid skeleton JSON: ", Json_getError()); return 0;