https://bugs.winehq.org/show_bug.cgi?id=50066
Bug ID: 50066 Summary: dinput-remap-joystick causes crash with >32 button joystick Product: Wine-staging Version: 5.19 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: lemmi59612@gmail.com CC: leslie_alistair@hotmail.com, z.figura12@gmail.com Distribution: ---
Created attachment 68522 --> https://bugs.winehq.org/attachment.cgi?id=68522 Log of `wine control joy.cpl` when crashing due to button 33 being pressed
When the `dinput-remap-joystick` staging patch is applied to Wine, various crashes occur with a joystick that has more than 32 buttons.
* Wine's `joy.cpl` crashes when pressing or releasing such a button (Wine-Staging) * Star Citizen crashes during launch (Wine-Staging + DXVK)
`joy.cpl` works fine in vanilla Wine. Star Citizen requires other staging patches to launch, and works fine if `dinput-remap-joystick` is excluded.
I'm using the Saitek X-55 Rhino HOTAS, where the throttle and stick can be plugged in independently. The throttle has 34 buttons and causes these crashes, the stick only reports 17 buttons (14 physically) and does not cause any crashes. Buttons 32-34 on the throttle are the three-state "MODE" switch (M1-M3 respectively).
The crashes in `joy.cpl` happen regardless of whether the `(event)` or `(js)` interface of the throttle is selected.
https://bugs.winehq.org/show_bug.cgi?id=50066
Martin Lehmann lemmi59612@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Distribution|--- |ArchLinux
https://bugs.winehq.org/show_bug.cgi?id=50066
Alex Henrie alexhenrie24@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |hardware CC| |alexhenrie24@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=50066
Alistair Leslie-Hughes leslie_alistair@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED Fixed by SHA1| |819539b19fc2f61dd365677b06d | |69e51012fb595
--- Comment #1 from Alistair Leslie-Hughes leslie_alistair@hotmail.com --- Fixed by https://github.com/wine-staging/wine-staging/commit/819539b19fc2f61dd365677b...
https://bugs.winehq.org/show_bug.cgi?id=50066
winetest@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetest@luukku.com
--- Comment #2 from winetest@luukku.com --- (In reply to Alistair Leslie-Hughes from comment #1)
Fixed by https://github.com/wine-staging/wine-staging/commit/ 819539b19fc2f61dd365677b06d69e51012fb595
well that was an easy fix. but is that value based on any joystick?
https://bugs.winehq.org/show_bug.cgi?id=50066
--- Comment #3 from Alistair Leslie-Hughes leslie_alistair@hotmail.com --- (In reply to winetest from comment #2)
(In reply to Alistair Leslie-Hughes from comment #1)
Fixed by https://github.com/wine-staging/wine-staging/commit/ 819539b19fc2f61dd365677b06d69e51012fb595
well that was an easy fix. but is that value based on any joystick?
No, its based off the button array size in the DIJOYSTATE2 structure that dinput uses.
https://bugs.winehq.org/show_bug.cgi?id=50066
Alistair Leslie-Hughes leslie_alistair@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #4 from Alistair Leslie-Hughes leslie_alistair@hotmail.com --- Closing bugs fixed in Staging 5.21.