Fixed infinite loop shutting down WGI controllers
We are guaranteed that the lock will be held during shutdown, so if we are in InvokeRemoved(), it's because we're shutting down controllers and need to remove them from our internal list. Fixes https://github.com/libsdl-org/SDL/issues/7016main
parent
f53d797cca
commit
ac99db9fc8
|
@ -410,7 +410,7 @@ static HRESULT STDMETHODCALLTYPE IEventHandler_CRawGameControllerVtbl_InvokeRemo
|
|||
SDL_LockJoysticks();
|
||||
|
||||
/* Can we get delayed calls to InvokeRemoved() after WGI_JoystickQuit()? */
|
||||
if (SDL_JoysticksQuitting() || !SDL_JoysticksInitialized()) {
|
||||
if (!SDL_JoysticksInitialized()) {
|
||||
SDL_UnlockJoysticks();
|
||||
return S_OK;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue