msvcp110: Add _Xtime_get_ticks implementation.

This commit is contained in:
Piotr Caban 2014-03-21 14:27:47 +01:00 committed by Alexandre Julliard
parent d5fd04f2f0
commit 9183e5847d
2 changed files with 18 additions and 1 deletions

View File

@ -3891,7 +3891,7 @@
@ stub _Xp_subx @ stub _Xp_subx
@ stub _Xtime_diff_to_millis @ stub _Xtime_diff_to_millis
@ stub _Xtime_diff_to_millis2 @ stub _Xtime_diff_to_millis2
@ stub _Xtime_get_ticks @ cdecl _Xtime_get_ticks()
@ stub __Wcrtomb_lk @ stub __Wcrtomb_lk
# extern _Zero # extern _Zero
@ cdecl towctrans(long long) @ cdecl towctrans(long long)

View File

@ -28,6 +28,12 @@
#include "wine/debug.h" #include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(msvcp); WINE_DEFAULT_DEBUG_CHANNEL(msvcp);
#define SECSPERDAY 86400
/* 1601 to 1970 is 369 years plus 89 leap days */
#define SECS_1601_TO_1970 ((369 * 365 + 89) * (ULONGLONG)SECSPERDAY)
#define TICKSPERSEC 10000000
#define TICKS_1601_TO_1970 (SECS_1601_TO_1970 * TICKSPERSEC)
struct __Container_proxy; struct __Container_proxy;
typedef struct { typedef struct {
@ -343,3 +349,14 @@ void __thiscall _Container_base12__Swap_all(
if(that->proxy) if(that->proxy)
that->proxy->cont = that; that->proxy->cont = that;
} }
/* _Xtime_get_ticks */
LONGLONG __cdecl _Xtime_get_ticks(void)
{
FILETIME ft;
TRACE("\n");
GetSystemTimeAsFileTime(&ft);
return ((LONGLONG)ft.dwHighDateTime<<32) + ft.dwLowDateTime - TICKS_1601_TO_1970;
}