summary refs log tree commit diff stats
path: root/qga/commands-win32.c
diff options
context:
space:
mode:
authorKostiantyn Kostiuk <konstantin@daynix.com>2021-08-03 09:38:39 +0000
committerKostiantyn Kostiuk <konstantin@daynix.com>2022-01-10 13:03:38 +0000
commitd0b896a7495b71313c43aff4329714ade56799d4 (patch)
treee8063e1f9727748dd4fbf8863fa8e49f851b95de /qga/commands-win32.c
parentcced3a72300c3b077be3bef7048688b9cf6f98c3 (diff)
downloadfocaccia-qemu-d0b896a7495b71313c43aff4329714ade56799d4.tar.gz
focaccia-qemu-d0b896a7495b71313c43aff4329714ade56799d4.zip
gqa-win: get_pci_info: Clean dev_info if handle is valid
Signed-off-by: Kostiantyn Kostiuk <konstantin@daynix.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Kostiantyn Kostiuk <kkostiuk@redhat.com>
Diffstat (limited to 'qga/commands-win32.c')
-rw-r--r--qga/commands-win32.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/qga/commands-win32.c b/qga/commands-win32.c
index 4e84afd83b..3dd74fe225 100644
--- a/qga/commands-win32.c
+++ b/qga/commands-win32.c
@@ -514,7 +514,7 @@ DEFINE_GUID(GUID_DEVINTERFACE_STORAGEPORT,
 
 static GuestPCIAddress *get_pci_info(int number, Error **errp)
 {
-    HDEVINFO dev_info;
+    HDEVINFO dev_info = INVALID_HANDLE_VALUE;
     SP_DEVINFO_DATA dev_info_data;
     SP_DEVICE_INTERFACE_DATA dev_iface_data;
     HANDLE dev_file;
@@ -749,7 +749,9 @@ static GuestPCIAddress *get_pci_info(int number, Error **errp)
     }
 
 free_dev_info:
-    SetupDiDestroyDeviceInfoList(dev_info);
+    if (dev_info != INVALID_HANDLE_VALUE) {
+        SetupDiDestroyDeviceInfoList(dev_info);
+    }
 out:
     return pci;
 }