[PATCH] dinput: Increase device buffer size to 1024.
The buffer size was previously limited to 20 in: 8d052561724f9c8d9e7770964bfaebdd01e98e60 Testing shows that it is somewhere around 1024 on Windows, and using a smaller buffer causes some input data to be lost with high polling rate mouses. It can be spotted in Wolfenstein II: New Colossus menus. Signed-off-by: Rémi Bernon <rbernon(a)codeweavers.com> --- dlls/dinput/device.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/dinput/device.c b/dlls/dinput/device.c index d18292192a5..bcb893e6324 100644 --- a/dlls/dinput/device.c +++ b/dlls/dinput/device.c @@ -1400,7 +1400,7 @@ HRESULT WINAPI IDirectInputDevice2WImpl_SetProperty( EnterCriticalSection(&This->crit); This->buffersize = pd->dwData; - This->queue_len = min(This->buffersize, 20); + This->queue_len = min(This->buffersize, 1024); HeapFree(GetProcessHeap(), 0, This->data_queue); This->data_queue = !This->queue_len ? NULL : HeapAlloc(GetProcessHeap(), 0, -- 2.25.0
Hi, While running your changed tests, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check? Full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=65205 Your paranoid android. === debian10 (32 bit Chinese:China report) === dinput: mouse.c:152: Test failed: Failed: 00000001 mouse.c:158: Test failed: Failed: 80070005 mouse.c:161: Test failed: Failed: 00000001 mouse.c:164: Test failed: Failed: 80070005 mouse.c:178: Test failed: GetDeviceData() failed: 00000000 cnt:0
participants (2)
-
Marvin -
Rémi Bernon