Browse Source

nanosvg: Sync with upstream c1f6e20

Now formally unmaintained, so probably no further sync to expect
from this repository.

(cherry picked from commit 097b746fddee5550acb3f0fab5887aeba7c8038e)
Rémi Verschelde 5 years ago
parent
commit
908c8862ab
2 changed files with 4 additions and 4 deletions
  1. 1 1
      thirdparty/README.md
  2. 3 3
      thirdparty/nanosvg/nanosvg.h

+ 1 - 1
thirdparty/README.md

@@ -422,7 +422,7 @@ Collection of single-file libraries used in Godot components.
 ## nanosvg
 
 - Upstream: https://github.com/memononen/nanosvg
-- Version: git (c1f6e20, 2018)
+- Version: git (25241c5, 2019)
 - License: zlib
 
 Files extracted from the upstream source:

+ 3 - 3
thirdparty/nanosvg/nanosvg.h

@@ -1102,7 +1102,7 @@ static double nsvg__atof(const char* s)
 	// Parse integer part
 	if (nsvg__isdigit(*cur)) {
 		// Parse digit sequence
-		intPart = (double)strtoll(cur, &end, 10);
+		intPart = strtoll(cur, &end, 10);
 		if (cur != end) {
 			res = (double)intPart;
 			hasIntPart = 1;
@@ -1130,7 +1130,7 @@ static double nsvg__atof(const char* s)
 
 	// Parse optional exponent
 	if (*cur == 'e' || *cur == 'E') {
-		int expPart = 0;
+		long expPart = 0;
 		cur++; // skip 'E'
 		expPart = strtol(cur, &end, 10); // Parse digit sequence with sign
 		if (cur != end) {
@@ -1168,7 +1168,7 @@ static const char* nsvg__parseNumber(const char* s, char* it, const int size)
 		}
 	}
 	// exponent
-	if (*s == 'e' || *s == 'E') {
+	if ((*s == 'e' || *s == 'E') && (s[1] != 'm' && s[1] != 'x')) {
 		if (i < last) it[i++] = *s;
 		s++;
 		if (*s == '-' || *s == '+') {