summaryrefslogtreecommitdiff
path: root/libjsmn/jsmn.c
diff options
context:
space:
mode:
Diffstat (limited to 'libjsmn/jsmn.c')
-rw-r--r--libjsmn/jsmn.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/libjsmn/jsmn.c b/libjsmn/jsmn.c
index 4f70adb..aa8b12b 100644
--- a/libjsmn/jsmn.c
+++ b/libjsmn/jsmn.c
@@ -9,7 +9,7 @@
static jsmntok_t *jsmn_alloc_token(jsmn_parser *parser,
jsmntok_t *tokens, size_t num_tokens) {
jsmntok_t *tok;
- if (parser->toknext >= num_tokens) {
+ if ((size_t)parser->toknext >= num_tokens) {
return NULL;
}
tok = &tokens[parser->toknext++];
@@ -108,6 +108,8 @@ static jsmnerr_t jsmn_parse_string(jsmn_parser *parser, const char *js,
/* Backslash: Quoted symbol expected */
if (c == '\\') {
+ int i = 0;
+
parser->pos++;
switch (js[parser->pos]) {
/* Allowed escaped symbols */
@@ -117,7 +119,6 @@ static jsmnerr_t jsmn_parse_string(jsmn_parser *parser, const char *js,
/* Allows escaped symbol \uXXXX */
case 'u':
parser->pos++;
- int i = 0;
for(; i < 4 && js[parser->pos] != '\0'; i++) {
/* If it isn't a hex character we have an error */
if(!((js[parser->pos] >= 48 && js[parser->pos] <= 57) || /* 0-9 */