os2: SDL_DestroyMutex should ignore NULL mutexes. Every other backend does this, so this should match, now. It's possible this was harmless, but we can avoid the system call and the (likely?) debug message when it fails, though!
diff --git a/src/thread/os2/SDL_sysmutex.c b/src/thread/os2/SDL_sysmutex.c
index 984ae10..d3fc7a3 100644
--- a/src/thread/os2/SDL_sysmutex.c
+++ b/src/thread/os2/SDL_sysmutex.c
@@ -56,12 +56,12 @@ SDL_CreateMutex(void)
void
SDL_DestroyMutex(SDL_mutex * mutex)
{
- ULONG ulRC;
HMTX hMtx = (HMTX)mutex;
-
- ulRC = DosCloseMutexSem(hMtx);
- if (ulRC != NO_ERROR) {
- debug_os2("DosCloseMutexSem(), rc = %u", ulRC);
+ if (hMtx != NULLHANDLE) {
+ const ULONG ulRC = DosCloseMutexSem(hMtx);
+ if (ulRC != NO_ERROR) {
+ debug_os2("DosCloseMutexSem(), rc = %u", ulRC);
+ }
}
}