From: Rémi Bernon <rbernon(a)codeweavers.com> If the registry is initialized, a process calling ChangeDisplaySettings will only load the driver when calling GetCurrentDisplaySettings in source_get_full_mode / source_get_current_settings. As we're going to cache the current display mode, this will not be called anymore and the driver won't be loaded at all. So, make sure we load it earlier instead. --- dlls/win32u/sysparams.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dlls/win32u/sysparams.c b/dlls/win32u/sysparams.c index ced9c61db06..73a2a062f16 100644 --- a/dlls/win32u/sysparams.c +++ b/dlls/win32u/sysparams.c @@ -2051,7 +2051,8 @@ BOOL update_display_cache( BOOL force ) return TRUE; } - if (force) + if (!force) get_display_driver(); /* make sure at least to load the user driver */ + else { if (!get_vulkan_gpus( &ctx.vulkan_gpus )) WARN( "Failed to find any vulkan GPU\n" ); if (!(status = update_display_devices( &ctx ))) add_vulkan_only_gpus( &ctx ); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/6573