diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index 88509ce9ae..5d2758bc19 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -13852,14 +13852,14 @@ qemuDomainGetHostdevPath(virDomainDefPtr def, virDomainHostdevSubsysSCSIPtr scsisrc = &dev->source.subsys.u.scsi; virDomainHostdevSubsysSCSIVHostPtr hostsrc = &dev->source.subsys.u.scsi_host; virDomainHostdevSubsysMediatedDevPtr mdevsrc = &dev->source.subsys.u.mdev; - virPCIDevicePtr pci = NULL; - virUSBDevicePtr usb = NULL; - virSCSIDevicePtr scsi = NULL; - virSCSIVHostDevicePtr host = NULL; - char *tmpPath = NULL; + g_autoptr(virPCIDevice) pci = NULL; + g_autoptr(virUSBDevice) usb = NULL; + g_autoptr(virSCSIDevice) scsi = NULL; + g_autoptr(virSCSIVHostDevice) host = NULL; + g_autofree char *tmpPath = NULL; bool includeVFIO = false; char **tmpPaths = NULL; - int *tmpPerms = NULL; + g_autofree int *tmpPerms = NULL; size_t tmpNpaths = 0; int perm = 0; @@ -13986,12 +13986,6 @@ qemuDomainGetHostdevPath(virDomainDefPtr def, ret = 0; cleanup: virStringListFreeCount(tmpPaths, tmpNpaths); - VIR_FREE(tmpPerms); - virPCIDeviceFree(pci); - virUSBDeviceFree(usb); - virSCSIDeviceFree(scsi); - virSCSIVHostDeviceFree(host); - VIR_FREE(tmpPath); return ret; }