* src/pci.c (pciGetDevice): Initialize dev->fd to -1, not 0.
(pciFreeDevice): Close fd also when it is 0.
+Tue Mar 3 12:22:51 +0100 2009 Jim Meyering <meyering@redhat.com>
+
+ avoid file descriptor leak when fd == 0
+ * src/pci.c (pciGetDevice): Initialize dev->fd to -1, not 0.
+ (pciFreeDevice): Close fd also when it is 0.
+
Tue Mar 3 12:22:51 +0100 2009 Jim Meyering <meyering@redhat.com>
don't leak a file descriptor on failed pciGetDevice call
return NULL;
}
+ dev->fd = -1;
dev->domain = domain;
dev->bus = bus;
dev->slot = slot;
pciFreeDevice(virConnectPtr conn ATTRIBUTE_UNUSED, pciDevice *dev)
{
VIR_DEBUG("%s %s: freeing", dev->id, dev->name);
- if (dev->fd)
+ if (dev->fd >= 0)
close(dev->fd);
VIR_FREE(dev);
}