]> git.proxmox.com Git - qemu.git/commitdiff
json-streamer: make sure to reset token_size after emitting a token list
authorAnthony Liguori <aliguori@us.ibm.com>
Wed, 1 Jun 2011 17:14:54 +0000 (12:14 -0500)
committerAnthony Liguori <aliguori@us.ibm.com>
Tue, 7 Jun 2011 18:52:11 +0000 (13:52 -0500)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
json-streamer.c
json-streamer.h

index 6b9af63fb2a209117707a34c448daf486c0602d3..a6cb28f66579c6d8525b7300768280e94cabb5cd 100644 (file)
@@ -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) {
@@ -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;
     }
 }
 
index 09f3bd70e498c942a2a54e5f50b5f28fc6647285..f09bc4daec98aae800d86820d728e11336672f91 100644 (file)
@@ -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,