SDL: Disable DirectInput handling to work around hangs with the "8BitDo Ultimate 2" controller.

This commit is contained in:
Jordan Woyak
2025-09-27 02:44:20 -05:00
parent 956f6cfbd2
commit c11132d2a6

View File

@@ -139,6 +139,12 @@ InputBackend::InputBackend(ControllerInterface* controller_interface)
// Disable DualSense Player LEDs; We already colorize the Primary LED
SDL_SetHint(SDL_HINT_JOYSTICK_HIDAPI_PS5_PLAYER_LED, "0");
// Disabling DirectInput support apparently solves hangs on shutdown for users with
// "8BitDo Ultimate 2" controllers.
// It also works around a possibly related random hang on a IDirectInputDevice8_Acquire
// call within SDL.
SDL_SetHint(SDL_HINT_JOYSTICK_DIRECTINPUT, "0");
m_hotplug_thread = std::thread([this] {
Common::SetCurrentThreadName("SDL Hotplug Thread");