diff options
| author | Prasad Joshi | 2014-03-28 18:38:58 +0100 |
|---|---|---|
| committer | Stefan Hajnoczi | 2014-04-01 13:49:53 +0200 |
| commit | c5a33ee9eee031c9bae362b9bd7045cd8ff24d86 (patch) | |
| tree | d87c0a23db7699f44bf7c987d2732d28860e9df1 | |
| parent | vvfat: Fix :floppy: option to suppress partition table (diff) | |
| download | qemu-c5a33ee9eee031c9bae362b9bd7045cd8ff24d86.tar.gz qemu-c5a33ee9eee031c9bae362b9bd7045cd8ff24d86.tar.xz qemu-c5a33ee9eee031c9bae362b9bd7045cd8ff24d86.zip | |
qcow2: fix two memory leaks in qcow2_open error code path
Signed-off-by: Prasad Joshi <prasadjoshi.linux@gmail.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
| -rw-r--r-- | block/qcow2.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/block/qcow2.c b/block/qcow2.c index b9dc960bd1..10eccf91e1 100644 --- a/block/qcow2.c +++ b/block/qcow2.c @@ -506,6 +506,7 @@ static int qcow2_open(BlockDriverState *bs, QDict *options, int flags, s->incompatible_features & ~QCOW2_INCOMPAT_MASK); ret = -ENOTSUP; + g_free(feature_table); goto fail; } @@ -745,6 +746,9 @@ static int qcow2_open(BlockDriverState *bs, QDict *options, int flags, if (s->l2_table_cache) { qcow2_cache_destroy(bs, s->l2_table_cache); } + if (s->refcount_block_cache) { + qcow2_cache_destroy(bs, s->refcount_block_cache); + } g_free(s->cluster_cache); qemu_vfree(s->cluster_data); return ret; |
