From: mistachkin Date: Thu, 4 Jan 2018 23:49:08 +0000 (+0000) Subject: In the 'fileio' extension code for Win32, use the FILE_FLAG_BACKUP_SEMANTICS flag... X-Git-Tag: version-3.22.0~108^2~11 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=104958cab09d00df8ad2a3d6a770e08dfb064811;p=thirdparty%2Fsqlite.git In the 'fileio' extension code for Win32, use the FILE_FLAG_BACKUP_SEMANTICS flag when setting the file times, just in case the file is actually a directory. FossilOrigin-Name: 4f3444060057127bce81787ed83cb5225cdbdd577596bc3fb06a40be2208f238 --- diff --git a/ext/misc/fileio.c b/ext/misc/fileio.c index 2464d18f80..835b53f4fa 100644 --- a/ext/misc/fileio.c +++ b/ext/misc/fileio.c @@ -280,7 +280,8 @@ static int writeFile( lastWrite.dwLowDateTime = (DWORD)intervals; lastWrite.dwHighDateTime = intervals >> 32; hFile = CreateFile( - zFile, FILE_WRITE_ATTRIBUTES, 0, NULL, OPEN_EXISTING, 0, NULL + zFile, FILE_WRITE_ATTRIBUTES, 0, NULL, OPEN_EXISTING, + FILE_FLAG_BACKUP_SEMANTICS, NULL ); if( hFile!=INVALID_HANDLE_VALUE ){ BOOL bResult = SetFileTime(hFile, NULL, &lastAccess, &lastWrite); diff --git a/manifest b/manifest index dd247b2868..7dd19634db 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Remove\s'timespec'\srelated\scode\sfrom\sthe\sshell\sthat\shas\sno\seffect\sand\sa\s(now)\ssuperfluous\s'timespec'\stypedef\sfrom\sthe\sWin32\sdirent\sheader\sfile. -D 2018-01-04T22:50:52.352 +C In\sthe\s'fileio'\sextension\scode\sfor\sWin32,\suse\sthe\sFILE_FLAG_BACKUP_SEMANTICS\sflag\swhen\ssetting\sthe\sfile\stimes,\sjust\sin\scase\sthe\sfile\sis\sactually\sa\sdirectory. +D 2018-01-04T23:49:08.958 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F Makefile.in 1b11037c5ed3399a79433cc82c59b5e36a7b3a3e4e195bb27640d0d2145e03e1 @@ -276,7 +276,7 @@ F ext/misc/compress.c 122faa92d25033d6c3f07c39231de074ab3d2e83 F ext/misc/csv.c 1a009b93650732e22334edc92459c4630b9fa703397cbb3c8ca279921a36ca11 F ext/misc/dbdump.c 3509fa6b8932d04e932d6b6b827b6a82ca362781b8e8f3c77336f416793e215e F ext/misc/eval.c f971962e92ebb8b0a4e6b62949463ee454d88fa2 -F ext/misc/fileio.c 16cf8d9b9372269a61644717929578a71c48eb018a76709f3bf1196bdc957d46 +F ext/misc/fileio.c 868aa0572b08484323b172918882d5f8444e287b1e29e1d1b161633cf03aed10 F ext/misc/fuzzer.c 7c64b8197bb77b7d64eff7cac7848870235d4c25 F ext/misc/ieee754.c f190d0cc5182529acb15babd177781be1ac1718c F ext/misc/json1.c dbe086615b9546c156bf32b9378fc09383b58bd17513b866cfd24c1e15281984 @@ -1694,7 +1694,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 335387f9e0d4569097d34cd99cd332b38a282e9b7ae25f088eb47df5c25837ef -R 1281cdb7398acc29fce34993c7e9c8c8 +P 57dac995dd028e4b7c8ce6806f5769831715c1bb9b886318fceb3fa50563d537 +R 02d2a190c58a7a01c71feee97e36cbb6 U mistachkin -Z d412c9c0d87063cd46a5fbdafa7a7569 +Z 088dbce32336167e7acacd4de5ece530 diff --git a/manifest.uuid b/manifest.uuid index 860fd9f513..d3c6c198e3 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -57dac995dd028e4b7c8ce6806f5769831715c1bb9b886318fceb3fa50563d537 \ No newline at end of file +4f3444060057127bce81787ed83cb5225cdbdd577596bc3fb06a40be2208f238 \ No newline at end of file