You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Remove dead code, fix MIDI resource leak, add defensive guards
Dead code removed:
- XInputState struct (GamepadTypes.cs) — vestigial from XInput removal
- SetAxis/SetBtn/SetDiscPov P/Invoke decls (VJoyVirtualController.cs) — never called
- _preservedVJoyNodes field (InputService.cs) — written but never read
- 6 unused DirectInput effect GUIDs (DeviceEffectItem.cs)
- Unused ObjectAspect/EffectParameterFlags enum values (InputTypes.cs)
- Stale TrimDeviceNodes comment (VJoyVirtualController.cs)
Bugs fixed:
- MIDI Connect() now uses try/catch to clean up _session/_virtualDevice/_connection
on any exception path (not just null returns)
- CreateVirtualController catch block now calls vc?.Dispose() to prevent leaking
partially-initialized controllers
- HidHide QueryDosDevice: guard against Array.IndexOf returning -1
Stale comments fixed:
- MapTo range 0–3 → 0–15 in UserSetting.cs and Step3
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
0 commit comments