|
@@ -2364,23 +2364,19 @@ Uint8 SDL_GameControllerGetButton(SDL_GameController *gamecontroller, SDL_GameCo
|
|
|
if (binding->input.axis.axis_min < binding->input.axis.axis_max) {
|
|
|
valid_input_range = (value >= binding->input.axis.axis_min && value <= binding->input.axis.axis_max);
|
|
|
if (valid_input_range) {
|
|
|
- retval = (value >= threshold) ? SDL_PRESSED : SDL_RELEASED;
|
|
|
- break;
|
|
|
+ retval |= (value >= threshold) ? SDL_PRESSED : SDL_RELEASED;
|
|
|
}
|
|
|
} else {
|
|
|
valid_input_range = (value >= binding->input.axis.axis_max && value <= binding->input.axis.axis_min);
|
|
|
if (valid_input_range) {
|
|
|
- retval = (value <= threshold) ? SDL_PRESSED : SDL_RELEASED;
|
|
|
- break;
|
|
|
+ retval |= (value <= threshold) ? SDL_PRESSED : SDL_RELEASED;
|
|
|
}
|
|
|
}
|
|
|
} else if (binding->inputType == SDL_CONTROLLER_BINDTYPE_BUTTON) {
|
|
|
- retval = SDL_JoystickGetButton(gamecontroller->joystick, binding->input.button);
|
|
|
- break;
|
|
|
+ retval |= SDL_JoystickGetButton(gamecontroller->joystick, binding->input.button);
|
|
|
} else if (binding->inputType == SDL_CONTROLLER_BINDTYPE_HAT) {
|
|
|
int hat_mask = SDL_JoystickGetHat(gamecontroller->joystick, binding->input.hat.hat);
|
|
|
- retval = (hat_mask & binding->input.hat.hat_mask) ? SDL_PRESSED : SDL_RELEASED;
|
|
|
- break;
|
|
|
+ retval |= (hat_mask & binding->input.hat.hat_mask) ? SDL_PRESSED : SDL_RELEASED;
|
|
|
}
|
|
|
}
|
|
|
}
|