Skip to content

Commit 3e23e57

Browse files
authored
Merge pull request #921 from nobu/nonportable-code
Fix non-portable code
2 parents 976ba36 + 8ad744c commit 3e23e57

1 file changed

Lines changed: 5 additions & 5 deletions

File tree

ext/json/ext/parser/parser.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -485,12 +485,12 @@ static uint32_t unescape_unicode(JSON_ParserState *state, const char *sp, const
485485

486486
const unsigned char *p = (const unsigned char *)sp;
487487

488-
const char b0 = digit_values[p[0]];
489-
const char b1 = digit_values[p[1]];
490-
const char b2 = digit_values[p[2]];
491-
const char b3 = digit_values[p[3]];
488+
const signed char b0 = digit_values[p[0]];
489+
const signed char b1 = digit_values[p[1]];
490+
const signed char b2 = digit_values[p[2]];
491+
const signed char b3 = digit_values[p[3]];
492492

493-
if (RB_UNLIKELY((b0 | b1 | b2 | b3) < 0)) {
493+
if (RB_UNLIKELY((signed char)(b0 | b1 | b2 | b3) < 0)) {
494494
raise_parse_error_at("incomplete unicode character escape sequence at %s", state, sp - 2);
495495
}
496496

0 commit comments

Comments
 (0)