commit fff9386af87bd0f54cda1ef4fe0bf131de7c3d8e Author: Nick Mathewson nickm@torproject.org Date: Wed Jun 12 10:45:48 2013 -0400
Revert "Use the FILE_SHARE_DELETE flag for CreateFile on a mapping"
This reverts commit 884a0e269c382f9e927d8c8b1ef4ef9d2d48379d.
I'm reverting this because it doesn't actually make the problem go away. It appears that instead we need to do unmap-then-replace. --- changes/bug2077_share_delete | 7 ------- src/common/compat.c | 2 +- 2 files changed, 1 insertion(+), 8 deletions(-)
diff --git a/changes/bug2077_share_delete b/changes/bug2077_share_delete deleted file mode 100644 index 71e9160..0000000 --- a/changes/bug2077_share_delete +++ /dev/null @@ -1,7 +0,0 @@ - o Major bugfixes (windows): - - Open files to be mapped with FILE_SHARE_DELETE so that we can - replace them before closing the mapping. This is a likely cause of - warnings and crashes when replacing the microdescriptor cache - file. Diagnosed based on comments by "doorss" and by Robert - Ransom. Possible fix for bug 2077; bugfix on 0.2.2.6-alpha. - diff --git a/src/common/compat.c b/src/common/compat.c index cb1dd78..c97a454 100644 --- a/src/common/compat.c +++ b/src/common/compat.c @@ -248,7 +248,7 @@ tor_mmap_file(const char *filename) strlcpy(tfilename,filename,MAX_PATH); #endif file_handle = CreateFile(tfilename, - GENERIC_READ, FILE_SHARE_READ|FILE_SHARE_DELETE, + GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,