Pārlūkot izejas kodu

Fixed time comparison and explicitly delay 1 ms instead of an arbitrary scheduled time.

Sam Lantinga 12 gadi atpakaļ
vecāks
revīzija
10ffa28a28
1 mainītis faili ar 2 papildinājumiem un 2 dzēšanām
  1. 2 2
      src/thread/pthread/SDL_syssem.c

+ 2 - 2
src/thread/pthread/SDL_syssem.c

@@ -156,10 +156,10 @@ SDL_SemWaitTimeout(SDL_sem * sem, Uint32 timeout)
 #else
     end = SDL_GetTicks() + timeout;
     while ((retval = SDL_SemTryWait(sem)) == SDL_MUTEX_TIMEDOUT) {
-        if (SDL_GetTicks() >= end) {
+        if ((Sint32)(SDL_GetTicks() - end) >= 0) {
             break;
         }
-        SDL_Delay(0);
+        SDL_Delay(1);
     }
 #endif /* HAVE_SEM_TIMEDWAIT */