From ca597ad34a4bf2f4f1c2352186d3e589040a0b54 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Thu, 14 Feb 2019 17:08:29 +0100 Subject: Curl_now: figure out windows version in win32_init ... and avoid use of static variables that aren't thread safe. Fixes regression from e9ababd4f5a (present in the 7.64.0 release) Reported-by: Paul Groke Fixes #3572 Closes #3573 --- lib/easy.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'lib/easy.c') diff --git a/lib/easy.c b/lib/easy.c index 6fcad3dec..d2d4166d5 100644 --- a/lib/easy.c +++ b/lib/easy.c @@ -75,6 +75,7 @@ #include "ssh.h" #include "setopt.h" #include "http_digest.h" +#include "system_win32.h" /* The last 3 #include files should be in this order */ #include "curl_printf.h" @@ -95,6 +96,11 @@ static void win32_cleanup(void) #endif } +#ifdef WIN32 +LARGE_INTEGER Curl_freq; +bool Curl_isVistaOrGreater; +#endif + /* win32_init() performs win32 socket initialization to properly setup the stack to allow networking */ static CURLcode win32_init(void) @@ -144,6 +150,16 @@ static CURLcode win32_init(void) } #endif +#ifdef WIN32 + if(Curl_verify_windows_version(6, 0, PLATFORM_WINNT, + VERSION_GREATER_THAN_EQUAL)) { + Curl_isVistaOrGreater = TRUE; + QueryPerformanceFrequency(&Curl_freq); + } + else + Curl_isVistaOrGreater = FALSE; +#endif + return CURLE_OK; } -- cgit v1.2.1