Work around bug in CIFS and vboxsf file systems.
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 19 Jan 2013 04:44:34 +0000 (20:44 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Sat, 19 Jan 2013 04:44:34 +0000 (20:44 -0800)
commit9fe43ff672d02d6f43bd5bc7b08f40823c7a1851
tree89f42a987eff9a5559c4735c19b37d06994c342a
parentfa705c9927b57158e8973cd950419a2ac0f72c53
Work around bug in CIFS and vboxsf file systems.

The bug was observed on Ubuntu operating inside a virtual machine,
editing files mounted via CIFS or vboxsf from the MS Windows 7 host.
The workaround introduces a race condition on non-buggy hosts,
but it's an unlikely race and anyway there's a nearly identical
nearby race that can't be fixed.
* fileio.c (valid_timestamp_file_system, timestamp_file_system):
New static vars.
(Fwrite_region): Test for file system time stamp bug.
(init_fileio): New function.
* lisp.h (init_fileio): Declare it.
* emacs.c (main): Call it.

Fixes: debbugs:13149
src/ChangeLog
src/emacs.c
src/fileio.c
src/lisp.h