Technically this is caused by the haptic devices not being closed at quit time, which we need to fix anyway, but this is a bandaid for now.
@@ -845,3 +845,4 @@ SDL_HapticRumbleStop(SDL_Haptic * haptic)
return SDL_HapticStopEffect(haptic, haptic->rumble_id);
}
+/* vi: set ts=4 sw=4 expandtab: */
@@ -206,4 +206,3 @@ extern int SDL_SYS_HapticStopAll(SDL_Haptic * haptic);
#endif /* _SDL_syshaptic_h */
/* vi: set ts=4 sw=4 expandtab: */
-
@@ -683,7 +683,10 @@ SDL_SYS_HapticQuit(void)
IOObjectRelease(item->dev);
SDL_free(item);
+
numhaptics = -1;
+ SDL_hapticlist = NULL;
+ SDL_hapticlist_tail = NULL;
@@ -1409,5 +1412,6 @@ SDL_SYS_HapticStopAll(SDL_Haptic * haptic)
return 0;
#endif /* SDL_HAPTIC_IOKIT */
@@ -182,3 +182,5 @@ SDL_SYS_HapticStopAll(SDL_Haptic * haptic)
#endif /* SDL_HAPTIC_DUMMY || SDL_HAPTIC_DISABLED */
@@ -1162,5 +1162,6 @@ SDL_SYS_HapticStopAll(SDL_Haptic * haptic)
#endif /* SDL_HAPTIC_LINUX */
@@ -272,6 +272,10 @@ SDL_SYS_HapticQuit(void)
SDL_XINPUT_HapticQuit();
SDL_DINPUT_HapticQuit();
+ numhaptics = 0;
/*