Explorar el Código

Doesn't grab mutex in __PHYSFS_setError() if PHYSFS_init() hasn't been called.

Ryan C. Gordon hace 24 años
padre
commit
7ffd15fb42
Se han modificado 1 ficheros con 6 adiciones y 2 borrados
  1. 6 2
      physfs.c

+ 6 - 2
physfs.c

@@ -107,7 +107,9 @@ static ErrMsg *findErrorForCurrentThread(void)
     ErrMsg *i;
     PHYSFS_uint64 tid;
 
-    __PHYSFS_platformGrabMutex(errorLock);
+    if (initialized)
+        __PHYSFS_platformGrabMutex(errorLock);
+
     if (errorMessages != NULL)
     {
         tid = __PHYSFS_platformGetThreadID();
@@ -121,7 +123,9 @@ static ErrMsg *findErrorForCurrentThread(void)
             } /* if */
         } /* for */
     } /* if */
-    __PHYSFS_platformReleaseMutex(errorLock);
+
+    if (initialized)
+        __PHYSFS_platformReleaseMutex(errorLock);
 
     return(NULL);   /* no error available. */
 } /* findErrorForCurrentThread */