Message ID | 1487363905-9480-15-git-send-email-armbru@redhat.com |
---|---|
State | New |
Headers | show |
On 02/17/2017 02:38 PM, Markus Armbruster wrote: > After a visit of a complex QAPI type FOO > > ov = qobject_output_visitor_new(&foo); > visit_type_FOO(ov, NULL, expr, &error_abort); > visit_complete(ov, &foo); > > we can safely assume qobject_type(foo) is QTYPE_QDICT. We do in many > places, but occasionally assert qobject_type(obj) == QTYPE_QDICT. > Don't. The appropriate place to check such fundamental properties of > QAPI visitors is the test suite. > > Signed-off-by: Markus Armbruster <armbru@redhat.com> > --- > block/nbd.c | 2 -- > block/nfs.c | 2 -- > block/qapi.c | 1 - > 3 files changed, 5 deletions(-) Reviewed-by: Eric Blake <eblake@redhat.com>
diff --git a/block/nbd.c b/block/nbd.c index 35f24be..a7f9108 100644 --- a/block/nbd.c +++ b/block/nbd.c @@ -537,8 +537,6 @@ static void nbd_refresh_filename(BlockDriverState *bs, QDict *options) visit_type_SocketAddress(ov, NULL, &s->saddr, &error_abort); visit_complete(ov, &saddr_qdict); visit_free(ov); - assert(qobject_type(saddr_qdict) == QTYPE_QDICT); - qdict_put_obj(opts, "server", saddr_qdict); if (s->export) { diff --git a/block/nfs.c b/block/nfs.c index 689eaa7..55a8a62 100644 --- a/block/nfs.c +++ b/block/nfs.c @@ -798,8 +798,6 @@ static void nfs_refresh_filename(BlockDriverState *bs, QDict *options) ov = qobject_output_visitor_new(&server_qdict); visit_type_NFSServer(ov, NULL, &client->server, &error_abort); visit_complete(ov, &server_qdict); - assert(qobject_type(server_qdict) == QTYPE_QDICT); - qdict_put_obj(opts, "server", server_qdict); qdict_put(opts, "path", qstring_from_str(client->path)); diff --git a/block/qapi.c b/block/qapi.c index ac480aa..a40922e 100644 --- a/block/qapi.c +++ b/block/qapi.c @@ -682,7 +682,6 @@ void bdrv_image_info_specific_dump(fprintf_function func_fprintf, void *f, visit_type_ImageInfoSpecific(v, NULL, &info_spec, &error_abort); visit_complete(v, &obj); - assert(qobject_type(obj) == QTYPE_QDICT); data = qdict_get(qobject_to_qdict(obj), "data"); dump_qobject(func_fprintf, f, 1, data); qobject_decref(obj);
After a visit of a complex QAPI type FOO ov = qobject_output_visitor_new(&foo); visit_type_FOO(ov, NULL, expr, &error_abort); visit_complete(ov, &foo); we can safely assume qobject_type(foo) is QTYPE_QDICT. We do in many places, but occasionally assert qobject_type(obj) == QTYPE_QDICT. Don't. The appropriate place to check such fundamental properties of QAPI visitors is the test suite. Signed-off-by: Markus Armbruster <armbru@redhat.com> --- block/nbd.c | 2 -- block/nfs.c | 2 -- block/qapi.c | 1 - 3 files changed, 5 deletions(-)