[PATCH 07/31] virQEMUCapsInitGuest: Refactor cleanup and remove return value

Peter Krempa pkrempa at redhat.com
Thu Mar 30 13:38:01 UTC 2023


Use automatic pointer freeing, remove 'ret' variable and also remove
return value completely.

Signed-off-by: Peter Krempa <pkrempa at redhat.com>
---
 src/qemu/qemu_capabilities.c | 19 ++++---------------
 1 file changed, 4 insertions(+), 15 deletions(-)

diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index 72105a65a3..93915a9284 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -984,15 +984,14 @@ virQEMUCapsGetDefaultEmulator(virArch hostarch,
 }


-static int
+static void
 virQEMUCapsInitGuest(virCaps *caps,
                      virFileCache *cache,
                      virArch hostarch,
                      virArch guestarch)
 {
-    char *binary = NULL;
-    virQEMUCaps *qemuCaps = NULL;
-    int ret = -1;
+    g_autofree char *binary = NULL;
+    g_autoptr(virQEMUCaps) qemuCaps = NULL;

     binary = virQEMUCapsGetDefaultEmulator(hostarch, guestarch);

@@ -1000,17 +999,10 @@ virQEMUCapsInitGuest(virCaps *caps,
     if (binary) {
         if (!(qemuCaps = virQEMUCapsCacheLookup(cache, binary))) {
             virResetLastError();
-            VIR_FREE(binary);
         }
     }

     virQEMUCapsInitGuestFromBinary(caps, binary, qemuCaps, guestarch);
-    ret = 0;
-
-    VIR_FREE(binary);
-    virObjectUnref(qemuCaps);
-
-    return ret;
 }


@@ -1194,10 +1186,7 @@ virQEMUCapsInit(virFileCache *cache)
      * if a qemu-system-$ARCH binary can't be found
      */
     for (i = 0; i < VIR_ARCH_LAST; i++)
-        if (virQEMUCapsInitGuest(caps, cache,
-                                 hostarch,
-                                 i) < 0)
-            return NULL;
+        virQEMUCapsInitGuest(caps, cache, hostarch, i);

     return g_steal_pointer(&caps);
 }
-- 
2.39.2



More information about the libvir-list mailing list