diff --git a/src/core/hle/service/hid/controllers/npad.cpp b/src/core/hle/service/hid/controllers/npad.cpp index 99af0469d..1e81f776f 100644 --- a/src/core/hle/service/hid/controllers/npad.cpp +++ b/src/core/hle/service/hid/controllers/npad.cpp @@ -563,17 +563,18 @@ bool Controller_NPad::SwapNpadAssignment(u32 npad_id_1, u32 npad_id_2) { npad_id_2 == NPAD_UNKNOWN) { return true; } + const auto npad_index_1 = NPadIdToIndex(npad_id_1); + const auto npad_index_2 = NPadIdToIndex(npad_id_2); - if (!IsControllerSupported(connected_controllers[NPadIdToIndex(npad_id_1)].type) || - !IsControllerSupported(connected_controllers[NPadIdToIndex(npad_id_2)].type)) { + if (!IsControllerSupported(connected_controllers[npad_index_1].type) || + !IsControllerSupported(connected_controllers[npad_index_2].type)) { return false; } - std::swap(connected_controllers[NPadIdToIndex(npad_id_1)].type, - connected_controllers[NPadIdToIndex(npad_id_2)].type); + std::swap(connected_controllers[npad_index_1].type, connected_controllers[npad_index_2].type); - InitNewlyAddedControler(NPadIdToIndex(npad_id_1)); - InitNewlyAddedControler(NPadIdToIndex(npad_id_2)); + InitNewlyAddedControler(npad_index_1); + InitNewlyAddedControler(npad_index_2); return true; }