OSDN Git Service

pci: convert goto into scope in bridge_filter
authorMichael S. Tsirkin <mst@redhat.com>
Thu, 12 Nov 2009 11:54:31 +0000 (13:54 +0200)
committerMichael S. Tsirkin <mst@redhat.com>
Tue, 1 Dec 2009 15:52:51 +0000 (17:52 +0200)
goto into scope is evil. rearrange pci_bridge_filter
so that we always go to end of function on error.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Isaku Yamahata <yamahata@valinux.co.jp>
hw/pci.c

index e26b3d0..8cf008d 100644 (file)
--- a/hw/pci.c
+++ b/hw/pci.c
@@ -717,13 +717,14 @@ static void pci_bridge_filter(PCIDevice *d, pcibus_t *addr, pcibus_t *size,
     }
 
     if (base > limit) {
-    no_map:
-        *addr = PCI_BAR_UNMAPPED;
-        *size = 0;
-    } else {
-        *addr = base;
-        *size = limit - base + 1;
+        goto no_map;
     }
+    *addr = base;
+    *size = limit - base + 1;
+    return;
+no_map:
+    *addr = PCI_BAR_UNMAPPED;
+    *size = 0;
 }
 
 static pcibus_t pci_bar_address(PCIDevice *d,