fix #10, now failing on incorrect escape sequences

This commit is contained in:
Max Bruckner 2016-11-14 19:33:03 +07:00
parent afd690d1c9
commit dc4b62915a

View File

@ -534,6 +534,11 @@ static const char *parse_string(cJSON *item, const char *str, const char **ep)
case 't': case 't':
*ptr2++ = '\t'; *ptr2++ = '\t';
break; break;
case '\"':
case '\\':
case '/':
*ptr2++ = *ptr;
break;
case 'u': case 'u':
/* transcode utf16 to utf8. See RFC2781 and RFC3629. */ /* transcode utf16 to utf8. See RFC2781 and RFC3629. */
uc = parse_hex4(ptr + 1); /* get the unicode char. */ uc = parse_hex4(ptr + 1); /* get the unicode char. */
@ -620,8 +625,8 @@ static const char *parse_string(cJSON *item, const char *str, const char **ep)
ptr2 += len; ptr2 += len;
break; break;
default: default:
*ptr2++ = *ptr; *ep = str;
break; return 0;
} }
ptr++; ptr++;
} }