Commit 8cd69810596e ("msi: Get system directory just once.") remove call
to GetSystemDirectoryW() in load_fusion_dlls() but forgot to add
corresponding wcscpy() call. This causes loading mscoree.dll to fail,
breaking .NET-assembly-related functionalities. Add it back.
---
Note: it seems like there isn't a test which actually test interactions between msi.dll and GAC/WinSxS. It probably makes sense to add some or modify existing ones.
--
v2: msi: fix .NET assembly-related functionalities due to missed string copy
https://gitlab.winehq.org/wine/wine/-/merge_requests/8756
The Crew Motorsport depends on that.
ECDSA_P521 is not exactly needed in this case (only ECDH_P521) but that has a lot of common parts and probably makes sense to add at once.
WRT RSA encryption change, the game calls BCryptEncrypt(... BCRYPT_PAD_OAEP) with NULL padding info and output buffer and length, maybe trying to determine the output size this way. The failure here is fatal for that process (while then it is going to use BCRYPT_PAD_PKCS1 with the actual output buffer). Turns out on Windows that works, makes some sense because the size of RSA encrypted output depends on RSA key size only (I added a test with 0 input and no padding just in case). While for decrypt that is different as it is not possible to determine decrypted length without knowing padding algorithm.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8728
NSFloatingWindowLevel(3) is below kCGDockWindowLevel(20), so windows with WS_EX_TOPMOST show behind
the macOS dock. WS_EX_TOPMOST should have a higher window level so that it's not behind the macOS dock.
This is similar to WS_EX_TOPMOST windows on Windows should show on top of the taskbar.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8704
Patches taken from !6207, no-op but should make the `write_type` helpers more readable and flexible.
--
v2: widl: Move some type name construction out of write_type_left.
widl: Remove unnecessary recursion for TYPE_BITFIELD.
widl: Introduce a new append_basic_type helper.
widl: Wrap strappend parameters in a new struct strbuf.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8696
Coordinates from mouse low level hook messages are not mapped the same way than WM_MOUSEMOVE or GetCursorPos. This causes problems on programs that make use of both values to calculate mouse movement, like the wine DirectInput implementation.
I'm marking this as a draft since I was not able to find a way to write a test for this. I'm able to easily reproduce it on Proton, because it creates a scaled full screen window, on Wine this doesn't happen so the coordinates are not required to be mapped to a scaled window.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8669
Documents such as iframes do not currently receive BeforeNavigate2 events.
--
v2: mshtml: Fire BeforeNavigate2 for documents in async_open.
mshtml/tests: Add iframe event tests in htmldoc.c.
mshtml/tests: Add call stacking to htmldoc test framework.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8761
!8598 will require some more work, so I wrote a number of tests in preparation for it. There will be another MR for capturing tests.
This MR also enable 32-bit PCM samples for PulseAudio, since they're already enabled for other drivers and it's useful to have some uniformity between the drivers in order to avoid making writing todo conditions even more of a nightmare than it already is. 32-bit samples are already enabled to extensible wave formats, so it doesn't seem intentional that they were not enabled for non-extensible formats.
--
v3: mmdevapi/tests: Test extensible wave formats when rendering.
mmdevapi/tests: Test flag AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM when rendering.
mmdevapi/tests: Test flag AUDCLNT_STREAMFLAGS_RATEADJUST when rendering.
mmdevapi/tests: Check that Initialize() matches IsFormatSupported() when rendering.
mmdevapi/tests: Simplify checking IsFormatSupported() result when rendering.
mmdevapi/tests: Test more audio formats when rendering.
mmdevapi/tests: Iterate independently on sampling rates, channel counts and sample formats when rendering.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8653
This message is *very* noisy and totally dominates +win (e.g. it printed 1.5 million times in a relatively short log of a Steam session). Is it useful? If so, perhaps we could log only around the error conditions?
--
v2: win32u: Remove a log message in get_shared_window.
win32u: Fix an uninitialized variable warning.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8762