| Submitter | Luiz Capitulino |
|---|---|
| Date | Dec. 18, 2009, 3:25 p.m. |
| Message ID | <1261149905-7622-4-git-send-email-lcapitulino@redhat.com> |
| Download | mbox | patch |
| Permalink | /patch/41408/ |
| State | New |
| Headers | show |
Comments
On Fri, 2009-12-18 at 13:25 -0200, Luiz Capitulino wrote: > This is for debug purposes only. This breaks quite a lot of commands where the returned data is a QList, e.g. query-commands, query-mice, query-cpus. Is the assert wrong, or are such commands meant to be returning a QDict? > Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> > --- > monitor.c | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/monitor.c b/monitor.c > index d238660..8ef1582 100644 > --- a/monitor.c > +++ b/monitor.c > @@ -283,6 +283,7 @@ static void monitor_protocol_emitter(Monitor *mon, QObject *data) > if (!monitor_has_error(mon)) { > /* success response */ > if (data) { > + assert(qobject_type(data) == QTYPE_QDICT); > qobject_incref(data); > qdict_put_obj(qmp, "return", data); > } else {
On Mon, 21 Dec 2009 19:21:18 +0000 Nathan Baum <nathan@parenthephobia.org.uk> wrote: > On Fri, 2009-12-18 at 13:25 -0200, Luiz Capitulino wrote: > > This is for debug purposes only. > > This breaks quite a lot of commands where the returned data is a QList, > e.g. query-commands, query-mice, query-cpus. Is the assert wrong, or are > such commands meant to be returning a QDict? The assert is wrong, as we've defined that returning a QList of QDicts is ok. We could check for a QList too and check its contents but I think that only dropping the assert is ok for now. Will submit a patch and thanks for testing QMP.
Patch
diff --git a/monitor.c b/monitor.c index d238660..8ef1582 100644 --- a/monitor.c +++ b/monitor.c @@ -283,6 +283,7 @@ static void monitor_protocol_emitter(Monitor *mon, QObject *data) if (!monitor_has_error(mon)) { /* success response */ if (data) { + assert(qobject_type(data) == QTYPE_QDICT); qobject_incref(data); qdict_put_obj(qmp, "return", data); } else {
This is for debug purposes only. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> --- monitor.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)