Rémi Bernon (@rbernon) commented about dlls/winmm/joystick.c:
+ if (is_already_mapped( object_formats, data_format.dwNumObjs, &instance )) + continue; + + object_format = &object_formats[data_format.dwNumObjs++]; + object_format->dwOfs = offsetof(struct joystick_state, axes[i]); + object_format->dwType = instance.dwType; + break; + } + } + + object_format = &object_formats[data_format.dwNumObjs++]; + object_format->pguid = &GUID_POV; + object_format->dwOfs = offsetof(struct joystick_state, pov); + object_format->dwType = DIDFT_OPTIONAL | DIDFT_POV | DIDFT_ANYINSTANCE; + + for (i = 0; i < 32; ++i)
for (i = 0; i < ARRAY_SIZE(((struct joystick_state *)0)->buttons); ++i)
(or a local joystick_state variable) -- https://gitlab.winehq.org/wine/wine/-/merge_requests/4029#note_47826