[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 08/11] json-lexer: reset the lexer state on an inval
From: |
Anthony Liguori |
Subject: |
[Qemu-devel] [PATCH 08/11] json-lexer: reset the lexer state on an invalid token |
Date: |
Fri, 11 Mar 2011 15:00:46 -0600 |
Not everything handles errors from json parsing gracefully. By at least
resetting the lexer, we'll start generating valid tokens again and hopefully
recover the stream.
Signed-off-by: Anthony Liguori <address@hidden>
diff --git a/json-lexer.c b/json-lexer.c
index c736f42..834d7af 100644
--- a/json-lexer.c
+++ b/json-lexer.c
@@ -303,6 +303,9 @@ static int json_lexer_feed_char(JSONLexer *lexer, char ch)
new_state = IN_START;
break;
case ERROR:
+ QDECREF(lexer->token);
+ lexer->token = qstring_new();
+ new_state = IN_START;
return -EINVAL;
default:
break;
--
1.7.0.4
[Qemu-devel] [PATCH 06/11] qerror: add JSON parsing error message, Anthony Liguori, 2011/03/11
[Qemu-devel] [PATCH 04/11] qerror: split out the reporting bits of QError, Anthony Liguori, 2011/03/11