Rémi Bernon (@rbernon) commented about dlls/wow64win/user.c:
+ return 0; + } + + if (*data_size < sizeof(RAWINPUTHEADER)) + { + SetLastError( ERROR_INSUFFICIENT_BUFFER ); + return ~0u; + } + + ret = NtUserGetRawInputData( handle, command, &data64, &data_size64, sizeof(RAWINPUTHEADER) ); + if (ret == ~0u) return ret; + data32->dwType = data64.dwType; + data32->dwSize = data64.dwSize - sizeof(RAWINPUTHEADER) + sizeof(RAWINPUTHEADER32); + data32->hDevice = (UINT_PTR)data64.hDevice; + data32->wParam = data64.wParam; + return sizeof(RAWINPUTHEADER); I think this should set `*data_size` to, and return `sizeof(RAWINPUTHEADER32)` instead?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/271#note_2567