summaryrefslogtreecommitdiffstats
path: root/src/core/MenuScreensCustom.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/MenuScreensCustom.cpp')
-rw-r--r--src/core/MenuScreensCustom.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/core/MenuScreensCustom.cpp b/src/core/MenuScreensCustom.cpp
index 069cbdef..6e23f76a 100644
--- a/src/core/MenuScreensCustom.cpp
+++ b/src/core/MenuScreensCustom.cpp
@@ -333,11 +333,8 @@ wchar* DetectJoystickDraw(bool* disabled, bool userHovering) {
}
}
if (found != -1 && CPad::XInputJoy1 != found) {
- if (CPad::XInputJoy1 != -1 && CPad::XInputJoy1 != found)
- CPad::XInputJoy2 = CPad::XInputJoy1;
- else
- CPad::XInputJoy2 = -1;
-
+ // We should never leave pads -1, so we can process them when they're connected and kinda support hotplug.
+ CPad::XInputJoy2 = (CPad::XInputJoy1 == -1 ? (found + 1) % 4 : CPad::XInputJoy1);
CPad::XInputJoy1 = found;
cachedButtonNum = 0; // fake too, because xinput bypass CControllerConfig
}