From: Stefan Hajnoczi Date: Thu, 4 Sep 2014 20:04:43 +0000 (+0100) Subject: vmdk: fix buf leak in vmdk_parse_extents() X-Git-Tag: v2.2.0-rc0~124^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b6b1d31f098eef8cd13556d343e46c213fac972a;p=thirdparty%2Fqemu.git vmdk: fix buf leak in vmdk_parse_extents() vmdk_open_sparse() does not take ownership of buf so the caller always needs to free it. Signed-off-by: Stefan Hajnoczi Reviewed-by: Max Reitz Reviewed-by: Fam Zheng --- diff --git a/block/vmdk.c b/block/vmdk.c index 9bf28f3390e..a1cb91131e2 100644 --- a/block/vmdk.c +++ b/block/vmdk.c @@ -846,8 +846,8 @@ static int vmdk_parse_extents(const char *desc, BlockDriverState *bs, } else { ret = vmdk_open_sparse(bs, extent_file, bs->open_flags, buf, errp); } + g_free(buf); if (ret) { - g_free(buf); bdrv_unref(extent_file); return ret; }