Use g_autoptr() in qemuCaps to get rid of a virObjectUnref call, a 'cleanup' label and the 'ret' pointer. Signed-off-by: Daniel Henrique Barboza <danielhb413@xxxxxxxxx> --- Found this while reviewing a patch last week. src/qemu/qemu_capabilities.c | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 484fff99e5..b46f3d8c2c 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -5735,8 +5735,7 @@ virQEMUCapsCacheLookupDefault(virFileCachePtr cache, virArch hostarch = virArchFromHost(); virArch arch = hostarch; virDomainVirtType capsType; - virQEMUCapsPtr qemuCaps = NULL; - virQEMUCapsPtr ret = NULL; + g_autoptr(virQEMUCaps) qemuCaps = NULL; virArch arch_from_caps; g_autofree char *probedbinary = NULL; @@ -5744,14 +5743,14 @@ virQEMUCapsCacheLookupDefault(virFileCachePtr cache, (virttype = virDomainVirtTypeFromString(virttypeStr)) < 0) { virReportError(VIR_ERR_INVALID_ARG, _("unknown virttype: %s"), virttypeStr); - goto cleanup; + return NULL; } if (archStr && (arch = virArchFromString(archStr)) == VIR_ARCH_NONE) { virReportError(VIR_ERR_INVALID_ARG, _("unknown architecture: %s"), archStr); - goto cleanup; + return NULL; } if (!binary) { @@ -5760,7 +5759,7 @@ virQEMUCapsCacheLookupDefault(virFileCachePtr cache, } if (!(qemuCaps = virQEMUCapsCacheLookup(cache, binary))) - goto cleanup; + return NULL; arch_from_caps = virQEMUCapsGetArch(qemuCaps); @@ -5774,7 +5773,7 @@ virQEMUCapsCacheLookupDefault(virFileCachePtr cache, "match given architecture '%s'"), virArchToString(arch_from_caps), virArchToString(arch)); - goto cleanup; + return NULL; } capsType = virQEMUCapsGetVirtType(qemuCaps); @@ -5786,7 +5785,7 @@ virQEMUCapsCacheLookupDefault(virFileCachePtr cache, virReportError(VIR_ERR_INVALID_ARG, _("KVM is not supported by '%s' on this host"), binary); - goto cleanup; + return NULL; } if (machine) { @@ -5797,7 +5796,7 @@ virQEMUCapsCacheLookupDefault(virFileCachePtr cache, virReportError(VIR_ERR_INVALID_ARG, _("the machine '%s' is not supported by emulator '%s'"), machine, binary); - goto cleanup; + return NULL; } } else { machine = virQEMUCapsGetPreferredMachine(qemuCaps, virttype); @@ -5810,11 +5809,7 @@ virQEMUCapsCacheLookupDefault(virFileCachePtr cache, if (retMachine) *retMachine = machine; - ret = g_steal_pointer(&qemuCaps); - - cleanup: - virObjectUnref(qemuCaps); - return ret; + return g_steal_pointer(&qemuCaps); } bool -- 2.26.2