Signed-off-by: Zhiyi Zhang zzhang@codeweavers.com --- dlls/user32/sysparams.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)
diff --git a/dlls/user32/sysparams.c b/dlls/user32/sysparams.c index 3f93f9c827..b82861bb5d 100644 --- a/dlls/user32/sysparams.c +++ b/dlls/user32/sysparams.c @@ -736,6 +736,18 @@ static void release_display_device_init_mutex( HANDLE mutex ) CloseHandle( mutex ); }
+/* Wait until user driver is loaded by explorer */ +static void wait_user_driver_ready(void) +{ + static BOOL ready = FALSE; + + if (!ready) + { + SendMessageW( GetDesktopWindow(), WM_NULL, 0, 0 ); + ready = TRUE; + } +} + /* map value from system dpi to standard 96 dpi for storing in the registry */ static int map_from_system_dpi( int val ) { @@ -4058,6 +4070,7 @@ BOOL WINAPI EnumDisplayDevicesW( LPCWSTR device, DWORD index, DISPLAY_DEVICEW *i
TRACE("%s %d %p %#x\n", debugstr_w( device ), index, info, flags);
+ wait_user_driver_ready(); mutex = get_display_device_init_mutex();
/* Find adapter */
Hi,
While running your changed tests, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check?
Full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=54467
Your paranoid android.
=== debian9 (32 bit report) ===
user32: msg.c:8713: Test failed: WaitForSingleObject failed 102 msg.c:8719: Test failed: destroy child on thread exit: 0: the msg 0x0082 was expected, but got msg 0x000f instead msg.c:8719: Test failed: destroy child on thread exit: 1: the msg 0x000f was expected, but got msg 0x0014 instead msg.c:8719: Test failed: destroy child on thread exit: 2: the msg sequence is not complete: expected 0014 - actual 0000 win.c:10127: Test failed: Expected foreground window 0, got 00E300D4 win.c:10133: Test failed: Expected foreground window 000E0120, got 00E300D4