[Bug 52508] EnumDisplayDevices() fails in obscure ways on 32-bit arch when 64-bit Vulkan is present but 32-bit is missing

WineHQ Bugzilla wine-bugs at winehq.org
Wed Apr 20 12:03:32 CDT 2022


https://bugs.winehq.org/show_bug.cgi?id=52508

--- Comment #3 from Zeb Figura <z.figura12 at gmail.com> ---
(In reply to Zhiyi Zhang from comment #1)
> We can't just let explorer.exe manage them since there are console
> applications that call EnumDisplayDevices() but don't launch explorer.exe,
> as Alexandre mentioned. 

Do you have a link to this conversation?

> I think with the PE work going on, we are moving in
> the direction of initializing these registries only on the 64-bit side.
> Jacek knows more about this. And obviously, some error prompt when Vulkan is
> missing wouldn't hurt.

Are we planning to make the WoW64 path required? That seems questionable to me,
but...

Could we initialize and query monitor information from some other centralized
location? wineserver, perhaps (I know you had patches for this), or just let
the first process initialize it while others query? Maybe I've had a
particularly rough time of it, but it just seems too easy for different
processes to get different results, in one way or another.

(In reply to Zhiyi Zhang from comment #2)
> It seems that wine_vk_init() already prints an error when loading Vulkan
> fails.

It prints an error when loading libvulkan fails, but there are other failure
modes that don't (libvulkan isn't present at compile time; loading libvulkan
succeeds but initializing a Vulkan device fails, etc). I'm not sure that all of
these deserve a winediag error in the general case (there are still plenty of
environments without a Vulkan driver), but it's unfortunate that it can result
in subtle bugs like this...

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list