Skip to content
Permalink
Browse files

Emscripten: Fixed sending button and motion events for not opened joy…

…sticks.

SDL_SYS_JoystickUpdate() was implemented incorrectly. For every call to it all
attached joysticks were checked. But actually only the given SDL_Joystick should
be checked then. This allowed sending broken events for attached but not opened
joysticks. It also checked the opened joysticks more often than actually needed.
  • Loading branch information
philippwiesemann committed Feb 22, 2015
1 parent e4be934 commit 5c43207fad3c18578846721642723545b9c276e3
Showing with 2 additions and 3 deletions.
  1. +2 −3 src/joystick/emscripten/SDL_sysjoystick.c
@@ -335,10 +335,10 @@ void
SDL_SYS_JoystickUpdate(SDL_Joystick * joystick)
{
EmscriptenGamepadEvent gamepadState;
SDL_joylist_item *item = SDL_joylist;
SDL_joylist_item *item = (SDL_joylist_item *) joystick->hwdata;
int i, result, buttonState;

while (item != NULL) {
if (item) {
result = emscripten_get_gamepad_status(item->index, &gamepadState);
if( result == EMSCRIPTEN_RESULT_SUCCESS) {
if(gamepadState.timestamp == 0 || gamepadState.timestamp != item->timestamp) {
@@ -368,7 +368,6 @@ SDL_SYS_JoystickUpdate(SDL_Joystick * joystick)
}
}
}
item = item->next;
}
}

0 comments on commit 5c43207

Please sign in to comment.