diff --git a/tests/ahci-test.c b/tests/ahci-test.c index 96fb45c17dbff85eb835a8831dde6a60f58fef65..0cc56ab28f4a27d041322b20deb73127c69a2688 100644 --- a/tests/ahci-test.c +++ b/tests/ahci-test.c @@ -45,7 +45,6 @@ /*** Globals ***/ static QGuestAllocator *guest_malloc; -static QPCIBus *pcibus; static char tmp_path[] = "/tmp/qtest.XXXXXX"; static bool ahci_pedantic; @@ -100,6 +99,7 @@ static QPCIDevice *get_ahci_device(uint32_t *fingerprint) { QPCIDevice *ahci; uint32_t ahci_fingerprint; + QPCIBus *pcibus; pcibus = qpci_init_pc(); @@ -123,15 +123,13 @@ static QPCIDevice *get_ahci_device(uint32_t *fingerprint) return ahci; } -static void free_ahci_device(QPCIDevice *ahci) +static void free_ahci_device(QPCIDevice *dev) { - /* libqos doesn't have a function for this, so free it manually */ - g_free(ahci); + QPCIBus *pcibus = dev ? dev->bus : NULL; - if (pcibus) { - qpci_free_pc(pcibus); - pcibus = NULL; - } + /* libqos doesn't have a function for this, so free it manually */ + g_free(dev); + qpci_free_pc(pcibus); } /*** Test Setup & Teardown ***/