On Tue Jan 23 19:25:36 2024 +0000, Alexandre Julliard wrote:
> > It looks like before Vista it returned `STATUS_SUCCESS` which is
> current Wine implementation, but since Vista it started to return
> `STATUS_INFO_LENGTH_MISMATCH` instead
> Is there an actual app that depends on this?
We didn't know so we just tried this but in the end it didn't make any difference.
So no I don't know any such app. And it's such an edge case that I guess only way for it to matter is if someone compares `GetVersion()` with result (eg. to detect poor sandbox etc) but that seems incredibly unlikely and there's probably hundreds of other functions to compare aswell.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4834#note_58735
This was broken by commit a1830c03a50ad38ec3f857a2a8b88498d1bf5e54 ("ntdll: Add a separate helper to build the main module on Wow64."). `init_wow64()` is called on thread creation, and each new thread was re-creating the main module and `ntdll`. `+relay` seemed to be the only functionality broken by this.
That commit also made a helper which calls `NtQueryVirtualMemory(LdrInitializeThunk,MemoryBasicInformation)`, but didn't remove the original call.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4924