[libvirt] [PATCH] qemu: Fix reference leak in qemuDomainDefPostParse

Jiri Denemark jdenemar at redhat.com
Wed Jun 22 08:37:14 UTC 2016


The function gets a reference on virQEMUDriverConfig which needs to be
released before returning.

Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
---
 src/qemu/qemu_domain.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index 29f6b93..8f19fb5 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -2134,13 +2134,13 @@ qemuDomainDefPostParse(virDomainDefPtr def,
     if (def->os.bootloader || def->os.bootloaderArgs) {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
                        _("bootloader is not supported by QEMU"));
-        return ret;
+        goto cleanup;
     }
 
     if (!def->os.machine) {
         virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
                        _("missing machine type"));
-        return ret;
+        goto cleanup;
     }
 
     if (def->os.loader &&
@@ -2155,7 +2155,7 @@ qemuDomainDefPostParse(virDomainDefPtr def,
     /* check for emulator and create a default one if needed */
     if (!def->emulator &&
         !(def->emulator = virDomainDefGetDefaultEmulator(def, caps)))
-        return ret;
+        goto cleanup;
 
     if (!(qemuCaps = virQEMUCapsCacheLookup(driver->qemuCapsCache,
                                             def->emulator)))
-- 
2.9.0




More information about the libvir-list mailing list