Kaydet (Commit) 279c3146 authored tarafından Michael Stahl's avatar Michael Stahl

sal: GetSystemTimePreciseAsFileTime requires Windows 8

3979afce broke the build on Windows 7.

Change-Id: I142208c062d56d6a3daa8213a877411edde45e55
üst 88e3b846
...@@ -35,10 +35,10 @@ sal_Bool SAL_CALL osl_getSystemTime(TimeValue* pTimeVal) ...@@ -35,10 +35,10 @@ sal_Bool SAL_CALL osl_getSystemTime(TimeValue* pTimeVal)
FILETIME CurTime, OffTime; FILETIME CurTime, OffTime;
__int64 Value; __int64 Value;
typedef BOOL (WINAPI *CheckTokenMembership_PROC)( HANDLE, PSID, PBOOL ); typedef VOID (WINAPI *GetSystemTimePreciseAsFileTime_PROC)(LPFILETIME);
static HMODULE hModule = NULL; static HMODULE hModule = NULL;
static CheckTokenMembership_PROC pCheckTokenMembership = NULL; static GetSystemTimePreciseAsFileTime_PROC pGetSystemTimePreciseAsFileTime = NULL;
OSL_ASSERT(pTimeVal != 0); OSL_ASSERT(pTimeVal != 0);
...@@ -46,12 +46,13 @@ sal_Bool SAL_CALL osl_getSystemTime(TimeValue* pTimeVal) ...@@ -46,12 +46,13 @@ sal_Bool SAL_CALL osl_getSystemTime(TimeValue* pTimeVal)
{ {
hModule = GetModuleHandleA( "Kernel32.dll" ); hModule = GetModuleHandleA( "Kernel32.dll" );
if ( hModule ) if ( hModule )
pCheckTokenMembership = (CheckTokenMembership_PROC)GetProcAddress( hModule, "GetSystemTimePreciseAsFileTime" ); pGetSystemTimePreciseAsFileTime = (GetSystemTimePreciseAsFileTime_PROC)
GetProcAddress(hModule, "GetSystemTimePreciseAsFileTime");
} }
// use ~1 microsecond resolution if available // use ~1 microsecond resolution if available
if ( pCheckTokenMembership ) if (pGetSystemTimePreciseAsFileTime)
GetSystemTimePreciseAsFileTime(&CurTime); pGetSystemTimePreciseAsFileTime(&CurTime);
else else
{ {
GetSystemTime(&SystemTime); GetSystemTime(&SystemTime);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment