Only one path will consume the @def; otherwise, we need to free it.
Signed-off-by: John Ferlan <jferlan(a)redhat.com>
---
tests/storagepoolxml2argvtest.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/tests/storagepoolxml2argvtest.c b/tests/storagepoolxml2argvtest.c
index 288b81af1d..f2a8af12b0 100644
--- a/tests/storagepoolxml2argvtest.c
+++ b/tests/storagepoolxml2argvtest.c
@@ -23,6 +23,7 @@ testCompareXMLToArgvFiles(bool shouldFail,
const char *cmdline)
{
int ret = -1;
+ bool consumeDef = false;
virStoragePoolDefPtr def = NULL;
virStoragePoolObjPtr pool = NULL;
VIR_AUTOFREE(char *) actualCmdline = NULL;
@@ -41,6 +42,7 @@ testCompareXMLToArgvFiles(bool shouldFail,
goto cleanup;
}
virStoragePoolObjSetDef(pool, def);
+ consumeDef = true;
if (!(src = virStorageBackendFileSystemGetPoolSource(pool))) {
VIR_TEST_DEBUG("pool type %d has no pool source\n", def->type);
@@ -83,6 +85,8 @@ testCompareXMLToArgvFiles(bool shouldFail,
ret = 0;
cleanup:
+ if (!consumeDef)
+ virStoragePoolDefFree(def);
virStoragePoolObjEndAPI(&pool);
if (shouldFail) {
virResetLastError();
--
2.20.1