From 2d66943f7ce1ba92b3cc39ad11b5c82e6d3a538f Mon Sep 17 00:00:00 2001 From: Jonathan Scruggs Date: Wed, 10 Jan 2018 14:06:48 +0000 Subject: [PATCH] Add signed char keyword On PowerPC and PowerPC64 systems, 'char' is unsigned by default. Can be reproduced by using the -funsigned-char flag for gcc. Adding the signed keyword adds compatibility on these systems. Signed-off by: Jonathan Scruggs --- COLLADABaseUtils/src/COLLADABUURI.cpp | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/COLLADABaseUtils/src/COLLADABUURI.cpp b/COLLADABaseUtils/src/COLLADABUURI.cpp index 1d03561a..ae403d8a 100644 --- COLLADABaseUtils/src/COLLADABUURI.cpp.orig 2018-02-05 10:56:11 UTC +++ COLLADABaseUtils/src/COLLADABUURI.cpp @@ -32,7 +32,7 @@ namespace COLLADABU - const char HEX2DEC[256] = + const signed char HEX2DEC[256] = { /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ /* 0 */ -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, -1,-1,-1,-1, @@ -107,9 +107,9 @@ namespace COLLADABU { if (*pSrc == '%') { - char dec1, dec2; - if ( (char)(-1) != (dec1 = HEX2DEC[*(pSrc + 1)]) - && (char)(-1) != (dec2 = HEX2DEC[*(pSrc + 2)])) + signed char dec1, dec2; + if ( (signed char)(-1) != (dec1 = HEX2DEC[*(pSrc + 1)]) + && (signed char)(-1) != (dec2 = HEX2DEC[*(pSrc + 2)])) { *pEnd++ = (dec1 << 4) + dec2; pSrc += 3;