From: mistachkin Date: Tue, 11 Jul 2017 17:54:27 +0000 (+0000) Subject: Make win32GetTimeOfDay() in the lsm1 test code more portable. X-Git-Tag: version-3.20.0~73 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ba334bb20d6db22fcdbbeb1cca3dea2c55ba97c9;p=thirdparty%2Fsqlite.git Make win32GetTimeOfDay() in the lsm1 test code more portable. FossilOrigin-Name: 2fe3a84330063378ca9fc5bfc8efe486c52d50b5c40be4f402a4f2318be69436 --- diff --git a/ext/lsm1/lsm-test/lsmtest_win32.c b/ext/lsm1/lsm-test/lsmtest_win32.c index f2f112acb4..9472723368 100644 --- a/ext/lsm1/lsm-test/lsmtest_win32.c +++ b/ext/lsm1/lsm-test/lsmtest_win32.c @@ -12,19 +12,19 @@ int win32GetTimeOfDay( void *tzp ){ FILETIME fileTime; - ULARGE_INTEGER largeInteger; ULONGLONG ticks; + ULONGLONG unixTicks; unused_parameter(tzp); memset(&fileTime, 0, sizeof(FILETIME)); GetSystemTimeAsFileTime(&fileTime); - memset(&largeInteger, 0, sizeof(ULARGE_INTEGER)); - largeInteger.LowPart = fileTime.dwLowDateTime; - largeInteger.HighPart = fileTime.dwHighDateTime; - ticks = largeInteger.QuadPart - TICKS_UNIX_EPOCH; - tp->tv_sec = (long)(ticks / TICKS_PER_SECOND); - ticks -= ((ULONGLONG)tp->tv_sec * TICKS_PER_SECOND); - tp->tv_usec = (long)(ticks / TICKS_PER_MICROSECOND); + ticks = (ULONGLONG)fileTime.dwHighDateTime << 32; + ticks |= (ULONGLONG)fileTime.dwLowDateTime; + unixTicks = ticks - TICKS_UNIX_EPOCH; + tp->tv_sec = (long)(unixTicks / TICKS_PER_SECOND); + unixTicks -= ((ULONGLONG)tp->tv_sec * TICKS_PER_SECOND); + tp->tv_usec = (long)(unixTicks / TICKS_PER_MICROSECOND); + return 0; } #endif diff --git a/manifest b/manifest index 39556ed745..162add8085 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Enabled\sthe\snew\ssqlite3_prepare_v3()\sand\ssqlite3_prepare16_v3()\sinterfaces\nfor\sloadable\sextensions. -D 2017-07-11T17:28:27.462 +C Make\swin32GetTimeOfDay()\sin\sthe\slsm1\stest\scode\smore\sportable. +D 2017-07-11T17:54:27.449 F Makefile.in 081e48dfe7f995d57ce1a88ddf4d2917b4349158648a6cd45b42beae30de3a12 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc 20850e3e8d4d4791e0531955852d768eb06f24138214870d543abb1a47346fba @@ -234,7 +234,7 @@ F ext/lsm1/lsm-test/lsmtest_tdb2.cc 99ea7f2dd9c7536c8fb9bdd329e4cfeb76899f3ddf6f F ext/lsm1/lsm-test/lsmtest_tdb3.c e44bf94e8bd724cd6ac161fd2cd44ffe43193932ad3a6bee1b07d80bb74012bb F ext/lsm1/lsm-test/lsmtest_tdb4.c 47e8bb5eba266472d690fb8264f1855ebdba0ae5a0e541e35fcda61ebf1d277f F ext/lsm1/lsm-test/lsmtest_util.c 241622db5a332a09c8e6e7606b617d288a37b557f7d3bce0bb97809f67cc2806 -F ext/lsm1/lsm-test/lsmtest_win32.c 5605aac3bf3852dcc2509fb1d097f5f11556418c1cc9cf0fdd09f9af53c97fb4 +F ext/lsm1/lsm-test/lsmtest_win32.c 0e0a224674c4d3170631c41b026b56c7e1672b151f5261e1b4cc19068641da2d F ext/lsm1/lsm.h 0f6f64ff071471cb87bf98beb8386566f30ea001 F ext/lsm1/lsmInt.h 68945f00c4fc97a5c82bd285a15d0baacd0019cf2e0b7d535759f000459462e1 F ext/lsm1/lsm_ckpt.c ac6fb4581983291c2e0be6fbb68f12b26f0c08d606835c05417be1323d0fdd03 @@ -1631,7 +1631,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P a8e651e0e52b016c3939df3ee23b4981f1a8841c7ddd2981c1ef391feb559a5e -R 203da47c07175d33b190b03dbc1a6851 -U drh -Z 26dac8927f38097219eaf56c6204ab1a +P b9debd626a68c4bc0e5fdeb8d15a991cfe6f62f9586eda76c07a1c18e498e3c2 +R 8745ce1c706502301f89ec6738b13039 +U mistachkin +Z 63dd27d75b2c25ef4e26d8f81d95be48 diff --git a/manifest.uuid b/manifest.uuid index f21fe12e65..dba55a945d 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -b9debd626a68c4bc0e5fdeb8d15a991cfe6f62f9586eda76c07a1c18e498e3c2 \ No newline at end of file +2fe3a84330063378ca9fc5bfc8efe486c52d50b5c40be4f402a4f2318be69436 \ No newline at end of file