Paul Gofman : winex11.drv: Register GUID_DISPLAY_DEVICE_ARRIVAL interface for GPUs.

Alexandre Julliard julliard at winehq.org
Thu Sep 16 15:34:31 CDT 2021


Module: wine
Branch: master
Commit: 6d290cf2296d879099fdad93ac1c5c2ea355cdd4
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=6d290cf2296d879099fdad93ac1c5c2ea355cdd4

Author: Paul Gofman <pgofman at codeweavers.com>
Date:   Thu Sep 16 15:10:27 2021 +0800

winex11.drv: Register GUID_DISPLAY_DEVICE_ARRIVAL interface for GPUs.

Signed-off-by: Paul Gofman <pgofman at codeweavers.com>
Signed-off-by: Zhiyi Zhang <zzhang at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/winex11.drv/display.c | 7 +++++++
 include/ntddvdeo.h         | 1 +
 2 files changed, 8 insertions(+)

diff --git a/dlls/winex11.drv/display.c b/dlls/winex11.drv/display.c
index 1ef728791fa..19c5d95a562 100644
--- a/dlls/winex11.drv/display.c
+++ b/dlls/winex11.drv/display.c
@@ -494,6 +494,13 @@ static BOOL X11DRV_InitGpu(HDEVINFO devinfo, const struct x11drv_gpu *gpu, INT g
     if (!link_device(instanceW, &GUID_DEVINTERFACE_DISPLAY_ADAPTER))
         goto done;
 
+    /* Register GUID_DISPLAY_DEVICE_ARRIVAL */
+    if (!SetupDiCreateDeviceInterfaceW(devinfo, &device_data, &GUID_DISPLAY_DEVICE_ARRIVAL, NULL, 0, NULL))
+        goto done;
+
+    if (!link_device(instanceW, &GUID_DISPLAY_DEVICE_ARRIVAL))
+        goto done;
+
     /* Write HardwareID registry property, REG_MULTI_SZ */
     written = sprintfW(bufferW, gpu_hardware_id_fmtW, gpu->vendor_id, gpu->device_id);
     bufferW[written + 1] = 0;
diff --git a/include/ntddvdeo.h b/include/ntddvdeo.h
index 9523e37f7b4..8736c6cc845 100644
--- a/include/ntddvdeo.h
+++ b/include/ntddvdeo.h
@@ -21,5 +21,6 @@
 
 DEFINE_GUID(GUID_DEVINTERFACE_DISPLAY_ADAPTER, 0x5b45201d, 0xf2f2, 0x4f3b, 0x85, 0xbb, 0x30, 0xff, 0x1f, 0x95, 0x35, 0x99);
 DEFINE_GUID(GUID_DEVINTERFACE_MONITOR, 0xe6f07b5f, 0xee97, 0x4a90, 0xb0, 0x76, 0x33, 0xf5, 0x7b, 0xf4, 0xea, 0xa7);
+DEFINE_GUID(GUID_DISPLAY_DEVICE_ARRIVAL, 0x1ca05180, 0xa699, 0x450a, 0x9a, 0x0c, 0xde, 0x4f, 0xbe, 0x3d, 0xdd, 0x89);
 
 #endif




More information about the wine-cvs mailing list