diff --git a/src/common/input/SdlJoystick.cpp b/src/common/input/SdlJoystick.cpp index cd57228af..530686f5f 100644 --- a/src/common/input/SdlJoystick.cpp +++ b/src/common/input/SdlJoystick.cpp @@ -108,7 +108,6 @@ namespace Sdl } else if (Event.type == SDL_JOYDEVICEREMOVED) { CloseSdlDevice(Event.jdevice.which); - g_InputDeviceManager.HotplugHandler(true); } else if (Event.type == SDL_JOYAXISMOTION || Event.type == SDL_JOYHATMOTION || diff --git a/src/core/hle/D3D8/Direct3D9/Direct3D9.cpp b/src/core/hle/D3D8/Direct3D9/Direct3D9.cpp index 2289e9301..c704d7342 100644 --- a/src/core/hle/D3D8/Direct3D9/Direct3D9.cpp +++ b/src/core/hle/D3D8/Direct3D9/Direct3D9.cpp @@ -1928,7 +1928,9 @@ static LRESULT WINAPI EmuMsgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lPar { // sent by rawinput when it detects changes for the registered device types - g_InputDeviceManager.HotplugHandler(false); + if (wParam == GIDC_ARRIVAL) { + g_InputDeviceManager.HotplugHandler(false); + } return DefWindowProc(hWnd, msg, wParam, lParam); } break;