Index: src/backend/port/win32/timer.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/port/win32/timer.c,v
retrieving revision 1.10
diff -c -c -r1.10 timer.c
*** src/backend/port/win32/timer.c	9 Aug 2006 17:47:03 -0000	1.10
--- src/backend/port/win32/timer.c	9 Aug 2006 20:39:16 -0000
***************
*** 56,63 ****
--- 56,69 ----
  				timerCommArea.value.it_value.tv_usec == 0)
  				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;
+ 			}
  			ResetEvent(timerCommArea.event);
  			LeaveCriticalSection(&timerCommArea.crit_sec);
  		}
