]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemuNodeDeviceDetachFlags: Avoid use of uninitialized variables
authorMichal Privoznik <mprivozn@redhat.com>
Tue, 2 Jul 2013 09:20:53 +0000 (11:20 +0200)
committerEric Blake <eblake@redhat.com>
Tue, 2 Jul 2013 12:44:28 +0000 (06:44 -0600)
After abf75aea24 the compiler screams:

qemu/qemu_driver.c: In function 'qemuNodeDeviceDetachFlags':
qemu/qemu_driver.c:10693:9: error: 'domain' may be used uninitialized in this function [-Werror=maybe-uninitialized]
     pci = virPCIDeviceNew(domain, bus, slot, function);
         ^
qemu/qemu_driver.c:10693:9: error: 'bus' may be used uninitialized in this function [-Werror=maybe-uninitialized]
qemu/qemu_driver.c:10693:9: error: 'slot' may be used uninitialized in this function [-Werror=maybe-uninitialized]
qemu/qemu_driver.c:10693:9: error: 'function' may be used uninitialized in this function [-Werror=maybe-uninitialized]

Since the other functions qemuNodeDeviceReAttach and qemuNodeDeviceReset
looks exactly the same, I've initialized the variables there as well.
However, I am still wondering why those functions don't matter to gcc
while the first one does.
(cherry picked from commit bc09c5d3355483bbf4cec55ca82689ae67af6d44)

src/qemu/qemu_driver.c

index 6a83fda1dca0926c3b4c77e98ab6afff87cdac68..f066b232a7a59cc6b57361816472a10b532fe0a0 100644 (file)
@@ -10670,7 +10670,7 @@ qemuNodeDeviceDetachFlags(virNodeDevicePtr dev,
 {
     virQEMUDriverPtr driver = dev->conn->privateData;
     virPCIDevicePtr pci = NULL;
-    unsigned domain, bus, slot, function;
+    unsigned domain = 0, bus = 0, slot = 0, function = 0;
     int ret = -1;
     virNodeDeviceDefPtr def = NULL;
     char *xml = NULL;
@@ -10738,7 +10738,7 @@ qemuNodeDeviceReAttach(virNodeDevicePtr dev)
     virQEMUDriverPtr driver = dev->conn->privateData;
     virPCIDevicePtr pci = NULL;
     virPCIDevicePtr other;
-    unsigned domain, bus, slot, function;
+    unsigned domain = 0, bus = 0, slot = 0, function = 0;
     int ret = -1;
     virNodeDeviceDefPtr def = NULL;
     char *xml = NULL;
@@ -10800,7 +10800,7 @@ qemuNodeDeviceReset(virNodeDevicePtr dev)
 {
     virQEMUDriverPtr driver = dev->conn->privateData;
     virPCIDevicePtr pci;
-    unsigned domain, bus, slot, function;
+    unsigned domain = 0, bus = 0, slot = 0, function = 0;
     int ret = -1;
     virNodeDeviceDefPtr def = NULL;
     char *xml = NULL;