Skip to content

Commit

Permalink
Fixed bug 2833 - Access Violation on SDL_PollEvent after init, delay …
Browse files Browse the repository at this point in the history
…and quit of joystick subsystem

Jan Klass

Not sure if this is limited to the joystick subsystem,
but I created a minimal program for reproducibility,
which is attached.

The issue occurs with my gamepad Razer Onza (an xbox-style gamepad) plugged in.
On initialization, the gamepad is being recognized.
After quitting the subsystem, the poll will receive the joystick added event,
which it instantly handles itself, calling SDL_SYS_JoystickDetect again,
which this time calls IDirectInput8_EnumDevices with dinput = NULL (after it was released on quit).
This seems to lead to an access violation within said function, which I have no source for.
  • Loading branch information
slouken committed Oct 7, 2016
1 parent dac3892 commit 24df68e
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions src/joystick/windows/SDL_windowsjoystick.c
Expand Up @@ -509,6 +509,9 @@ SDL_SYS_JoystickQuit(void)

SDL_DINPUT_JoystickQuit();
SDL_XINPUT_JoystickQuit();

s_bDeviceAdded = SDL_FALSE;
s_bDeviceRemoved = SDL_FALSE;
}

/* return the stable device guid for this device index */
Expand Down

0 comments on commit 24df68e

Please sign in to comment.