From 91ca45f9dc17668b3d6f8d90bb25038e04d11b9f Mon Sep 17 00:00:00 2001 From: Jiri Denemark Date: Wed, 8 Feb 2012 14:35:12 +0100 Subject: [PATCH] qemu: Fix memory leak when building -cpu argument Reported by Alex Jia: ==21503== 112 (32 direct, 80 indirect) bytes in 1 blocks are definitely lost in loss record 37 of 40 ==21503== at 0x4A04A28: calloc (vg_replace_malloc.c:467) ==21503== by 0x4A8991: virAlloc (memory.c:101) ==21503== by 0x505A6C: x86DataCopy (cpu_x86.c:247) ==21503== by 0x507B34: x86Compute (cpu_x86.c:1225) ==21503== by 0x43103C: qemuBuildCommandLine (qemu_command.c:3561) ==21503== by 0x41C9F7: testCompareXMLToArgvHelper (qemuxml2argvtest.c:183) ==21503== by 0x41E10D: virtTestRun (testutils.c:141) ==21503== by 0x41B942: mymain (qemuxml2argvtest.c:705) ==21503== by 0x41D7E7: virtTestMain (testutils.c:696) --- src/qemu/qemu_command.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 0e26df1ccc..a346f1e1c6 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -3666,8 +3666,7 @@ qemuBuildCpuArgStr(const struct qemud_driver *driver, ret = 0; cleanup: - if (guest) - cpuDataFree(guest->arch, data); + cpuDataFree(host->arch, data); virCPUDefFree(guest); virCPUDefFree(cpu);