diff options
author | Serge A. Zaitsev <devnull@localhost> | 2012-02-01 17:15:54 +0200 |
---|---|---|
committer | Serge A. Zaitsev <devnull@localhost> | 2012-02-01 17:15:54 +0200 |
commit | 30f932772ecd749f43b9e9fda18626d3895e4c1c (patch) | |
tree | 1d84677568e9493346d356926068324c4e9993c4 /jsmn.c | |
parent | 929e2337562c21d17b4ee31b1db90ccf0fa09d8d (diff) |
tested partial parser for strings, added primitive string parser test, fixed token allocation
Diffstat (limited to 'jsmn.c')
-rw-r--r-- | jsmn.c | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -8,9 +8,9 @@ static jsmntok_t *jsmn_alloc_token(jsmn_parser *parser, jsmntok_t *tokens, size_t num_tokens) { unsigned int i; - for (i = parser->curtoken; i < num_tokens; i++) { + for (i = parser->toknext; i < num_tokens; i++) { if (tokens[i].start == -1 && tokens[i].end == -1) { - parser->curtoken = i; + parser->toknext = i + 1; tokens[i].size = 0; return &tokens[i]; } @@ -121,7 +121,7 @@ jsmnerr_t jsmn_parse(jsmn_parser *parser, const char *js, jsmntok_t *tokens, jsmntok_t *token; /* initialize the rest of tokens (they could be reallocated) */ - for (i = parser->curtoken; i < num_tokens; i++) { + for (i = parser->toknext; i < num_tokens; i++) { jsmn_fill_token(&tokens[i], JSMN_PRIMITIVE, -1, -1); } @@ -143,7 +143,7 @@ jsmnerr_t jsmn_parse(jsmn_parser *parser, const char *js, jsmntok_t *tokens, break; case '}': case ']': type = (c == '}' ? JSMN_OBJECT : JSMN_ARRAY); - for (i = parser->curtoken; i >= 0; i--) { + for (i = parser->toknext - 1; i >= 0; i--) { token = &tokens[i]; if (token->start != -1 && token->end == -1) { if (token->type != type) { @@ -191,7 +191,7 @@ jsmnerr_t jsmn_parse(jsmn_parser *parser, const char *js, jsmntok_t *tokens, */ void jsmn_init(jsmn_parser *parser) { parser->pos = 0; - parser->curtoken = 0; + parser->toknext = 0; parser->cursize = NULL; } |