From ea4f9b4899ebe1806a78e222023262299aa68833 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Tue, 23 Jul 2019 15:34:24 +0200 Subject: [PATCH] dinput_joypad_button - cleanups --- input/drivers_joypad/dinput_joypad.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/input/drivers_joypad/dinput_joypad.c b/input/drivers_joypad/dinput_joypad.c index 5ef57561fe..60f4afa5c0 100644 --- a/input/drivers_joypad/dinput_joypad.c +++ b/input/drivers_joypad/dinput_joypad.c @@ -420,6 +420,7 @@ static bool dinput_joypad_button(unsigned port_num, uint16_t joykey) { unsigned hat_dir = 0; const struct dinput_joypad_data *pad = &g_pads[port_num]; + if (!pad || !pad->joypad) return false; @@ -431,10 +432,8 @@ static bool dinput_joypad_button(unsigned port_num, uint16_t joykey) { unsigned pov; unsigned hat = GET_HAT(joykey); - unsigned elems = sizeof(pad->joy_state.rgdwPOV) / - sizeof(pad->joy_state.rgdwPOV[0]); - if (hat >= elems) + if (hat >= ARRAY_SIZE(pad->joy_state.rgdwPOV)) return false; pov = pad->joy_state.rgdwPOV[hat]; @@ -454,15 +453,10 @@ static bool dinput_joypad_button(unsigned port_num, uint16_t joykey) return (pov >= 22500) && (pov <= 31500); } } - - return false; } else { - unsigned elems = sizeof(pad->joy_state.rgbButtons) / - sizeof(pad->joy_state.rgbButtons[0]); - - if (joykey < elems) + if (joykey < ARRAY_SIZE(pad->joy_state.rgbButtons)) return pad->joy_state.rgbButtons[joykey]; }