This commit is contained in:
Algjs 2024-02-29 18:21:02 +00:00 committed by GitHub
commit 33a7108e22
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 27 additions and 2 deletions

29
cJSON.c
View File

@ -1052,9 +1052,34 @@ static parse_buffer *buffer_skip_whitespace(parse_buffer * const buffer)
return buffer;
}
while (can_access_at_index(buffer, 0) && (buffer_at_offset(buffer)[0] <= 32))
while (true)
{
buffer->offset++;
while (can_access_at_index(buffer, 0) && (buffer_at_offset(buffer)[0] <= 32))
{
buffer->offset++;
}
/* exit loop if no comment found */
if (cannot_access_at_index(buffer, 1) || buffer_at_offset(buffer)[0] != '/' || (buffer_at_offset(buffer)[1] != '*' && buffer_at_offset(buffer)[1] != '/')) break;
/* remove comment */
buffer->offset+=2;
if (buffer_at_offset(buffer)[-1] == '/')
{ /* '/' '/' single-line comment */
while (can_access_at_index(buffer, 0) && (buffer_at_offset(buffer)[0] != '\r' && buffer_at_offset(buffer)[0] != '\n'))
{
buffer->offset++;
}
}
else
{ /* '/' '*' multi-line comment */
while (can_access_at_index(buffer, 1) && buffer_at_offset(buffer)[0] != '*' && buffer_at_offset(buffer)[1] != '/')
{
buffer->offset++;
}
}
buffer->offset++;
}
if (buffer->offset == buffer->length)