| /** |
| * This file has no copyright assigned and is placed in the Public Domain. |
| * This file is part of the mingw-w64 runtime package. |
| * No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| */ |
| |
| #include <windows.h> |
| #include <sys/timeb.h> |
| |
| #include "filetime_to_time64.h" |
| |
| static void __cdecl emu__ftime64(struct __timeb64 *tb64) |
| { |
| struct __timeb32 tb32; |
| SYSTEMTIME systemtime; |
| FILETIME filetime; |
| |
| _ftime32(&tb32); |
| tb64->timezone = tb32.timezone; |
| tb64->dstflag = tb32.dstflag; |
| |
| GetSystemTime(&systemtime); |
| if (SystemTimeToFileTime(&systemtime, &filetime)) |
| { |
| tb64->time = filetime_to_time64(&filetime); |
| tb64->millitm = systemtime.wMilliseconds; |
| } |
| else |
| { |
| tb64->time = (__time64_t)tb32.time; /* truncated */ |
| tb64->millitm = tb32.millitm; |
| } |
| } |
| |
| #define RETT void |
| #define FUNC _ftime64 |
| #define ARGS struct __timeb64 *tb |
| #define CALL tb |
| #include "msvcrt_or_emu_glue.h" |