Fixed bug 2953 - Crash due to a bad cleanup in the SDL_SYS_HapticQuit function

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.
This commit is contained in:
Sam Lantinga 2015-06-14 19:21:13 -07:00
parent a4eb0dea86
commit e3df6d5e66
6 changed files with 14 additions and 3 deletions

View File

@ -845,3 +845,4 @@ SDL_HapticRumbleStop(SDL_Haptic * haptic)
return SDL_HapticStopEffect(haptic, haptic->rumble_id);
}
/* vi: set ts=4 sw=4 expandtab: */

View File

@ -206,4 +206,3 @@ extern int SDL_SYS_HapticStopAll(SDL_Haptic * haptic);
#endif /* _SDL_syshaptic_h */
/* vi: set ts=4 sw=4 expandtab: */

View File

@ -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 */
/* vi: set ts=4 sw=4 expandtab: */

View File

@ -182,3 +182,5 @@ SDL_SYS_HapticStopAll(SDL_Haptic * haptic)
}
#endif /* SDL_HAPTIC_DUMMY || SDL_HAPTIC_DISABLED */
/* vi: set ts=4 sw=4 expandtab: */

View File

@ -1162,5 +1162,6 @@ SDL_SYS_HapticStopAll(SDL_Haptic * haptic)
return 0;
}
#endif /* SDL_HAPTIC_LINUX */
/* vi: set ts=4 sw=4 expandtab: */

View File

@ -272,6 +272,10 @@ SDL_SYS_HapticQuit(void)
SDL_XINPUT_HapticQuit();
SDL_DINPUT_HapticQuit();
numhaptics = 0;
SDL_hapticlist = NULL;
SDL_hapticlist_tail = NULL;
}
/*