28 Feb
2023
28 Feb
'23
3:36 p.m.
This patch addresses an issue in Second Life and potentially other multi-threaded applications which process WM_KEYDOWN in one thread and then verify that the key is "still down" with GetAsyncKeyState from another thread. Wine uses a per-thread key cache, resulting in inconsistent views of key status. Caches are now invalidated when an input event is injected by the driver or via SendInput. -- v5: win32u: invalidate all cached keys after input https://gitlab.winehq.org/wine/wine/-/merge_requests/2153