IWinInetHttpInfo_QueryInfo returns a multibyte string, not a wide string. We
were also wrongly expecting it to have a NUL terminator.
* * *
this one doesn't feel good. IWinInetHttpInfo_QueryInfo calls HttpInfo_QueryInfo (urlmon), which calls HttpQueryInfoA (wininet), so it returns char*. but inside, HttpQueryInfoA is calling HttpQueryInfoW and does charset conversion. so we are converting the string to multibyte and back.
maybe there's an API that returns wchar* i don't know about.
--
v5: mshtml: Fix misuse of IWinInetHttpInfo_QueryInfo.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8228
IWinInetHttpInfo_QueryInfo returns a multibyte string, not a wide string. We
were also wrongly expecting it to have a NUL terminator.
* * *
this one doesn't feel good. IWinInetHttpInfo_QueryInfo calls HttpInfo_QueryInfo (urlmon), which calls HttpQueryInfoA (wininet), so it returns char*. but inside, HttpQueryInfoA is calling HttpQueryInfoW and does charset conversion. so we are converting the string to multibyte and back.
maybe there's an API that returns wchar* i don't know about.
--
v4: mshtml: Fix misuse of IWinInetHttpInfo_QueryInfo.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8228
Updating the GL drawables on/offscreen dynamically, similarly to how we do it for Vulkan, and in order to ultimately converge and factor both GL and VK client surfaces.
--
v2: winex11: Rename context drawables to draw / read.
winex11: Drop pixmap-based child window workaround.
winex11: Update drawable size and offscreen when presenting.
winex11: Update every window GL drawable on resize / reparent.
winex11: Update GL drawable offscreen status instead of recreating.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8291
the copy part looks good to me (first 2 commits)
handling of separators in completion still lacks a couple of items
`dir "a+<TAB>` differs from native
`dir a,<TAB>` differs from native
`dir a"<TAB>` differs from native
note there are characters (other than '+') that native (tested on Win10 only) uses for file separation: '\\', '&', '(', ')', '/', '!', '\~', '{', '}', '\[', '\]' and surprisingly '^' (as ^ is an escape character)
what is not supported as separator:
'\<', '\>' how strange!!! you want a filename after a redirection!
'|' (that's strange I would have expected & and | to behave similarly)
and `dir a><TAB>` the '\>' is swallowed by completion... not sure we want that (esp. since you'd expect to type a filename after a redirection operator)
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8200#note_106573
The function was passing a 32-bit `UNICODE_STRING` pointer directly to the 64-bit
function, causing string corruption. Use the `unicode_str_32to64()` helper like other
similar functions.
This fixes 32-bit .NET Framework applications failing to create windows, such as
[dnSpyEx v6.5.1 (x86)](https://github.com/dnSpyEx/dnSpy/releases/tag/v6.5.1), when using a new-style WoW64 build.
Fixes: 73f4aeb2dcc33abd2f3ee02ee8fc1042d1998399
--
v2: wow64win: Fix UNICODE_STRING thunking in wow64_NtUserRegisterWindowMessage.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8323
The function was passing a 32-bit `UNICODE_STRING` pointer directly to the 64-bit
function, causing string corruption. Use the `unicode_str_32to64()` helper like other
similar functions.
This fixes 32-bit .NET Framework applications failing to create windows, such as
[dnSpyEx v6.5.1 (x86)](https://github.com/dnSpyEx/dnSpy/releases/tag/v6.5.1), when using a new-style WoW64 build.
Fixes: 73f4aeb2dcc33abd2f3ee02ee8fc1042d1998399
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8323
Before this change we've treated Rbp as a CONTEXT_CONTROL register, but it is a CONTEXT_INTEGER register on windows (unlike ebp on i386, which is indeed a CONTEXT_CONTROL register on windows).
This caused issues with debuggers, specifically the Visual Studio 2022 Remote Debugging Server issues a SetThreadContext call with ContextFlags=CONTEXT_CONTROL, without Rbp set, which leads to Rbp getting erroneously zero'd.
Attached a simple test program [capture.c](/uploads/74698f4cd99246880250d6a139777603/capture.c), not sure if this should be part of the ntdll tests instead.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8317