1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-27 02:02:26 +00:00

Quell more warnings and, perhaps, avoid alignment faults on 64-bit Windows.

[originally from svn r8664]
This commit is contained in:
Jacob Nevins 2009-09-27 15:52:13 +00:00
parent 0ecfb229f4
commit a83a9cc2a3

View File

@ -69,10 +69,19 @@ char *psftp_getcwd(void)
return ret; return ret;
} }
#define TIME_POSIX_TO_WIN(t, ft) (*(LONGLONG*)&(ft) = \ #define TIME_POSIX_TO_WIN(t, ft) do { \
((LONGLONG) (t) + (LONGLONG) 11644473600) * (LONGLONG) 10000000) ULARGE_INTEGER uli; \
#define TIME_WIN_TO_POSIX(ft, t) ((t) = (unsigned long) \ uli.QuadPart = ((ULONGLONG)(t) + 11644473600ull) * 10000000ull; \
((*(LONGLONG*)&(ft)) / (LONGLONG) 10000000 - (LONGLONG) 11644473600)) (ft).dwLowDateTime = uli.LowPart; \
(ft).dwHighDateTime = uli.HighPart; \
} while(0)
#define TIME_WIN_TO_POSIX(ft, t) do { \
ULARGE_INTEGER uli; \
uli.LowPart = (ft).dwLowDateTime; \
uli.HighPart = (ft).dwHighDateTime; \
uli.QuadPart = uli.QuadPart / 10000000ull - 11644473600ull; \
(t) = (unsigned long) uli.QuadPart; \
} while(0)
struct RFile { struct RFile {
HANDLE h; HANDLE h;