From: Pan Nengyuan <pannengy...@huawei.com>

collect_image_check() is called twice in img_check(), the filename/format will 
be alloced without free the original memory.
It is not a big deal since the process will exit anyway, but seems like a clean 
code and it will remove the warning spotted by asan.

Reported-by: Euler Robot <euler.ro...@huawei.com>
Signed-off-by: Pan Nengyuan <pannengy...@huawei.com>
Message-Id: <20200227012950.12256-3-pannengy...@huawei.com>
Signed-off-by: Max Reitz <mre...@redhat.com>
---
 qemu-img.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/qemu-img.c b/qemu-img.c
index 4bc40df6d2..7b7087dd60 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -817,6 +817,8 @@ static int img_check(int argc, char **argv)
                     check->corruptions_fixed);
         }
 
+        qapi_free_ImageCheck(check);
+        check = g_new0(ImageCheck, 1);
         ret = collect_image_check(bs, check, filename, fmt, 0);
 
         check->leaks_fixed          = leaks_fixed;
-- 
2.24.1


Reply via email to