diff options
author | Markus Armbruster <armbru@redhat.com> | 2015-11-20 13:53:35 +0100 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2015-11-25 14:27:43 +0100 |
commit | 903c341d5742b160e52752eb6fdc1ba9b87dc52e (patch) | |
tree | 6776784a8b207af6ee31d28de08331c329d829be /block | |
parent | 98caa5bc0083ed4fe4833addd3078b56ce2f6cfa (diff) | |
download | qemu-903c341d5742b160e52752eb6fdc1ba9b87dc52e.tar.gz qemu-903c341d5742b160e52752eb6fdc1ba9b87dc52e.tar.bz2 qemu-903c341d5742b160e52752eb6fdc1ba9b87dc52e.zip |
block/qapi: Plug memory leak on query-block error path
Spotted by Coverity.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'block')
-rw-r--r-- | block/qapi.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/block/qapi.c b/block/qapi.c index d20262decb..267f147fe3 100644 --- a/block/qapi.c +++ b/block/qapi.c @@ -436,7 +436,9 @@ BlockInfoList *qmp_query_block(Error **errp) bdrv_query_info(blk, &info->value, &local_err); if (local_err) { error_propagate(errp, local_err); - goto err; + g_free(info); + qapi_free_BlockInfoList(head); + return NULL; } *p_next = info; @@ -444,10 +446,6 @@ BlockInfoList *qmp_query_block(Error **errp) } return head; - - err: - qapi_free_BlockInfoList(head); - return NULL; } BlockStatsList *qmp_query_blockstats(bool has_query_nodes, |