Skip to content

Commit

Permalink
json-streamer: make sure to reset token_size after emitting a token list
Browse files Browse the repository at this point in the history
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
  • Loading branch information
Anthony Liguori committed Jun 7, 2011
1 parent 29c75dd commit eca7db4
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 0 deletions.
2 changes: 2 additions & 0 deletions json-streamer.c
Expand Up @@ -65,6 +65,7 @@ static void json_message_process_token(JSONLexer *lexer, QString *token, JSONTok
parser->emit(parser, parser->tokens);
QDECREF(parser->tokens);
parser->tokens = qlist_new();
parser->token_size = 0;
} else if (parser->token_size > MAX_TOKEN_SIZE ||
parser->bracket_count > MAX_NESTING ||
parser->brace_count > MAX_NESTING) {
Expand All @@ -76,6 +77,7 @@ static void json_message_process_token(JSONLexer *lexer, QString *token, JSONTok
parser->emit(parser, parser->tokens);
QDECREF(parser->tokens);
parser->tokens = qlist_new();
parser->token_size = 0;
}
}

Expand Down
1 change: 1 addition & 0 deletions json-streamer.h
Expand Up @@ -24,6 +24,7 @@ typedef struct JSONMessageParser
int brace_count;
int bracket_count;
QList *tokens;
uint64_t token_size;
} JSONMessageParser;

void json_message_parser_init(JSONMessageParser *parser,
Expand Down

0 comments on commit eca7db4

Please sign in to comment.