mirror of
https://github.com/DaveGamble/cJSON.git
synced 2026-11-03 13:28:48 +00:00
Fix infinite loop in cJSON_Minify
This commit is contained in:
1 parent
465352fb99
commit
08d2bc766a
2 files changed
+9
No files matched your search
@@ -2717,6 +2717,8 @@ CJSON_PUBLIC(void) cJSON_Minify(char *json)
|
||||
else if (json[1] == '*')
|
||||
{
|
||||
skip_multiline_comment(&json);
|
||||
} else {
|
||||
json++;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
@@ -152,6 +152,12 @@ static void cjson_minify_should_minify_json(void) {
|
||||
free(buffer);
|
||||
}
|
||||
|
||||
static void cjson_minify_should_not_loop_infinitely(void) {
|
||||
char string[] = { '8', ' ', '/', ' ', '5', '\n', '\0' };
|
||||
/* this should not be an infinite loop */
|
||||
cJSON_Minify(string);
|
||||
}
|
||||
|
||||
int CJSON_CDECL main(void)
|
||||
{
|
||||
UNITY_BEGIN();
|
||||
@@ -162,6 +168,7 @@ int CJSON_CDECL main(void)
|
||||
RUN_TEST(cjson_minify_should_remove_multiline_comments);
|
||||
RUN_TEST(cjson_minify_should_remove_spaces);
|
||||
RUN_TEST(cjson_minify_should_not_modify_strings);
|
||||
RUN_TEST(cjson_minify_should_not_loop_infinitely);
|
||||
|
||||
return UNITY_END();
|
||||
}
|
||||
Reference in new issue
Block a user