[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 4/4] QMP: Don't leak on connection close
From: |
Luiz Capitulino |
Subject: |
[Qemu-devel] [PATCH 4/4] QMP: Don't leak on connection close |
Date: |
Thu, 4 Feb 2010 18:13:16 -0200 |
QMP's chardev event callback doesn't call
json_message_parser_destroy() on CHR_EVENT_CLOSED. As the call
to json_message_parser_init() on CHR_EVENT_OPENED allocates memory,
we'are leaking on close.
Fix that by just calling json_message_parser_destroy() on
CHR_EVENT_CLOSED.
Signed-off-by: Luiz Capitulino <address@hidden>
---
monitor.c | 12 ++++++++----
1 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/monitor.c b/monitor.c
index c8b63aa..aacc0af 100644
--- a/monitor.c
+++ b/monitor.c
@@ -4401,16 +4401,20 @@ static QObject *get_qmp_greeting(void)
*/
static void monitor_control_event(void *opaque, int event)
{
- if (event == CHR_EVENT_OPENED) {
- QObject *data;
- Monitor *mon = opaque;
+ QObject *data;
+ Monitor *mon = opaque;
+ switch (event) {
+ case CHR_EVENT_OPENED:
mon->mc->command_mode = 0;
json_message_parser_init(&mon->mc->parser, handle_qmp_command);
-
data = get_qmp_greeting();
monitor_json_emitter(mon, data);
qobject_decref(data);
+ break;
+ case CHR_EVENT_CLOSED:
+ json_message_parser_destroy(&mon->mc->parser);
+ break;
}
}
--
1.6.6
- [Qemu-devel] [PATCH 1/4] qjson: Improve debugging, (continued)
- [Qemu-devel] [PATCH 1/4] qjson: Improve debugging, Luiz Capitulino, 2010/02/04
- Re: [Qemu-devel] [PATCH 1/4] qjson: Improve debugging, Anthony Liguori, 2010/02/04
- Re: [Qemu-devel] [PATCH 1/4] qjson: Improve debugging, Luiz Capitulino, 2010/02/05
- Re: [Qemu-devel] [PATCH 1/4] qjson: Improve debugging, Anthony Liguori, 2010/02/05
- Re: [Qemu-devel] [PATCH 1/4] qjson: Improve debugging, Markus Armbruster, 2010/02/05
- Re: [Qemu-devel] [PATCH 1/4] qjson: Improve debugging, Luiz Capitulino, 2010/02/08
- Re: [Qemu-devel] [PATCH 1/4] qjson: Improve debugging, Anthony Liguori, 2010/02/08
- Re: [Qemu-devel] [PATCH 1/4] qjson: Improve debugging, Luiz Capitulino, 2010/02/08
[Qemu-devel] [PATCH 4/4] QMP: Don't leak on connection close,
Luiz Capitulino <=
[Qemu-devel] [PATCH 2/4] Monitor: remove unneeded checks, Luiz Capitulino, 2010/02/04
[Qemu-devel] [PATCH 3/4] QError: Don't abort on multiple faults, Luiz Capitulino, 2010/02/04