Commit 7fc1cbb6 authored by Marc Hoersken's avatar Marc Hoersken
Browse files

tool_util.c: Use GetTickCount64 if it is available

parent b9950e3b
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -33,10 +33,19 @@ struct timeval tool_tvnow(void)
  ** GetTickCount() is available on _all_ Windows versions from W95 up
  ** to nowadays. Returns milliseconds elapsed since last system boot,
  ** increases monotonically and wraps once 49.7 days have elapsed.
  **
  ** GetTickCount64() is available on Windows version from Windows Vista
  ** and Windows Server 2008 up to nowadays. The resolution of the
  ** function is limited to the resolution of the system timer, which
  ** is typically in the range of 10 milliseconds to 16 milliseconds.
  */
  struct timeval now;
#if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600)
  ULONGLONG milliseconds = GetTickCount64();
#else
  DWORD milliseconds = GetTickCount();
  now.tv_sec = milliseconds / 1000;
#endif
  now.tv_sec = (long)(milliseconds / 1000);
  now.tv_usec = (milliseconds % 1000) * 1000;
  return now;
}