From: Bruce Momjian Date: Wed, 9 Aug 2006 21:18:15 +0000 (+0000) Subject: Round microseconds on setitimer upwards. X-Git-Url: http://git.postgresql.org/gitweb/static/gitweb.js?a=commitdiff_plain;h=1bbf83bb85a1f1994d27e14681b3a97b404e27a7;p=users%2Fbernd%2Fpostgres.git Round microseconds on setitimer upwards. --- diff --git a/src/backend/port/win32/timer.c b/src/backend/port/win32/timer.c index 048bebb058..62b9105652 100644 --- a/src/backend/port/win32/timer.c +++ b/src/backend/port/win32/timer.c @@ -57,12 +57,9 @@ pg_timer_thread(LPVOID param) waittime = INFINITE; /* Cancel the interrupt */ else { - /* Minimum wait time is 1ms */ - if (timerCommArea.value.it_value.tv_sec == 0 && - timerCommArea.value.it_value.tv_usec < 1000) - timerCommArea.value.it_value.tv_usec = 1000; - /* WaitForSingleObjectEx() uses milliseconds */ - waittime = timerCommArea.value.it_value.tv_usec / 1000 + timerCommArea.value.it_value.tv_sec * 1000; + /* WaitForSingleObjectEx() uses milliseconds, round up */ + waittime = (timerCommArea.value.it_value.tv_usec + 999) / 1000 + + timerCommArea.value.it_value.tv_sec * 1000; } ResetEvent(timerCommArea.event); LeaveCriticalSection(&timerCommArea.crit_sec);