From: John Ferlan Date: Fri, 28 Jun 2013 16:18:01 +0000 (-0400) Subject: Resolve valgrind error in virStorageBackendCreateQemuImgCmd() X-Git-Tag: CVE-2013-2218~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=164d46e8baa95333ed98d1c089e433cdcc079588;p=thirdparty%2Flibvirt.git Resolve valgrind error in virStorageBackendCreateQemuImgCmd() Commit id '53d5967c' introduced the following: TEST: storagevolxml2argvtest .............. 14 OK ==25636== 358 (264 direct, 94 indirect) bytes in 1 blocks are definitely lost in loss record 67 of 75 ==25636== at 0x4A06B6F: calloc (vg_replace_malloc.c:593) ==25636== by 0x4C95791: virAlloc (viralloc.c:124) ==25636== by 0x4CA0BB4: virCommandNewArgs (vircommand.c:805) ==25636== by 0x4CA0C88: virCommandNew (vircommand.c:789) ==25636== by 0x408602: virStorageBackendCreateQemuImgCmd (storage_backend.c:849) ==25636== by 0x405427: testCompareXMLToArgvHelper (storagevolxml2argvtest.c:61) ==25636== by 0x4064DF: virtTestRun (testutils.c:158) ==25636== by 0x40516F: mymain (storagevolxml2argvtest.c:195) ==25636== by 0x406B1A: virtTestMain (testutils.c:722) ==25636== by 0x37C1021A04: (below main) (libc-start.c:225) ==25636== PASS: storagevolxml2argvtest --- diff --git a/src/storage/storage_backend.c b/src/storage/storage_backend.c index ae25c8974c..9a3bcf8b61 100644 --- a/src/storage/storage_backend.c +++ b/src/storage/storage_backend.c @@ -865,8 +865,10 @@ virStorageBackendCreateQemuImgCmd(virConnectPtr conn, do_encryption, preallocate, vol->target.format, vol->target.compat, - vol->target.features) < 0) + vol->target.features) < 0) { + virCommandFree(cmd); return NULL; + } if (opts) virCommandAddArgList(cmd, "-o", opts, NULL); VIR_FREE(opts);