win32u: Check GUID_NULL display device if desktop atom is missing.
When using nulldrv, there's no module to call __wine_set_user_driver and
the user driver is still lazy_load_driver when get_display_driver gets
called during desktop windows creation.
Then, load_desktop_driver fails as it cannot find the not-yet-created
desktop window atom, and fails later explorer.exe window creations such
as the systray window.
Other processes don't suffer from this as they wait for the desktop
window to be fully created, and its atom will be eventually set.
This change makes sure that we succeed in the case nulldrv was selected
by explorer.exe, while still failing in case of error with another user
driver as it would fail to open the right display device GUID.
Showing
Please
register
or
sign in
to comment