Unverified Commit 940e1c1e authored by Marcel Raad's avatar Marcel Raad
Browse files

Windows: fixes for MinGW targeting Windows Vista

Classic MinGW has neither InitializeCriticalSectionEx nor
GetTickCount64, independent of the target Windows version.

Closes https://github.com/curl/curl/pull/3113
parent 6450a557
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -38,7 +38,8 @@
#  define curl_thread_t          HANDLE
#  define curl_thread_t_null     (HANDLE)0
#  if !defined(_WIN32_WINNT) || !defined(_WIN32_WINNT_VISTA) || \
      (_WIN32_WINNT < _WIN32_WINNT_VISTA)
      (_WIN32_WINNT < _WIN32_WINNT_VISTA) || \
      (defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR))
#    define Curl_mutex_init(m)   InitializeCriticalSection(m)
#  else
#    define Curl_mutex_init(m)   InitializeCriticalSectionEx(m, 0, 1)
+2 −1
Original line number Diff line number Diff line
@@ -33,7 +33,8 @@ struct curltime Curl_now(void)
  */
  struct curltime now;
#if !defined(_WIN32_WINNT) || !defined(_WIN32_WINNT_VISTA) || \
    (_WIN32_WINNT < _WIN32_WINNT_VISTA)
    (_WIN32_WINNT < _WIN32_WINNT_VISTA) || \
    (defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR))
  DWORD milliseconds = GetTickCount();
  now.tv_sec = milliseconds / 1000;
  now.tv_usec = (milliseconds % 1000) * 1000;
+2 −1
Original line number Diff line number Diff line
@@ -40,7 +40,8 @@ struct timeval tvnow(void)
  ** is typically in the range of 10 milliseconds to 16 milliseconds.
  */
  struct timeval now;
#if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600)
#if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600) && \
    (!defined(__MINGW32__) || defined(__MINGW64_VERSION_MAJOR))
  ULONGLONG milliseconds = GetTickCount64();
#else
  DWORD milliseconds = GetTickCount();
+2 −1
Original line number Diff line number Diff line
@@ -414,7 +414,8 @@ static struct timeval tvnow(void)
  ** is typically in the range of 10 milliseconds to 16 milliseconds.
  */
  struct timeval now;
#if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600)
#if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600) && \
    (!defined(__MINGW32__) || defined(__MINGW64_VERSION_MAJOR))
  ULONGLONG milliseconds = GetTickCount64();
#else
  DWORD milliseconds = GetTickCount();