[libvirt] [PATCHv2 9/3] qemu: avoid memory leaks

Eric Blake eblake at redhat.com
Tue Aug 2 21:50:33 UTC 2011


On 08/02/2011 03:46 PM, Eric Blake wrote:
> Quite a few leaks detected by coverity.  For chr, the leaks were
> close enough to the allocations to plug in place; for disk, the
> leaks were separated from the allocation by enough other lines with
> intermediate failure cases that I refactored the cleanup instead.
>
> * src/qemu/qemu_command.c (qemuParseCommandLine): Plug leaks.
> ---
>
> v2: address review comments from v1

squash this in too (serves me right for hitting send prior to 'make 
check' completing).

diff --git i/src/qemu/qemu_command.c w/src/qemu/qemu_command.c
index 194f3ff..067e53e 100644
--- i/src/qemu/qemu_command.c
+++ w/src/qemu/qemu_command.c
@@ -6411,11 +6411,11 @@ virDomainDefPtr qemuParseCommandLine(virCapsPtr 
caps,
                  virDomainDiskDefFree(disk);
                  goto no_memory;
              }
-            def->disks[def->ndisks++] = disk;
-            disk = NULL;
-
              if (disk->bus == VIR_DOMAIN_DISK_BUS_VIRTIO)
                  nvirtiodisk++;
+
+            def->disks[def->ndisks++] = disk;
+            disk = NULL;
          } else if (STREQ(arg, "-pcidevice")) {
              virDomainHostdevDefPtr hostdev;
              WANT_VALUE();


-- 
Eric Blake   eblake at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org




More information about the libvir-list mailing list