Subject: bug#19607: issue with Emacs 24.4.1 but not with 24.3.1 : changed on disk; really edit the buffer

From: Paul Eggert <[email-masked]>
Date: Wed, 21 Jan 2015 18:20:27 -0800

Sorry, I'm still having trouble seeing what the bug is. strace doesn't output 
full time stamps; it tells us their values only to the nearest second.
Can you run Emacs under a debugger?  Here's a recipe, if you have the time:

$ wget ftp://ftp.gnu.org/gnu/emacs/emacs-24.4.tar.xz
$ tar xf emacs-24.4.tar.xz
$ cd emacs-24.4
$ ./configure CFLAGS='-g3 -O0'
$ make
$ cd src
$ gdb emacs
(gdb) source .gdbinit
(gdb) b fileio.c:5338
(gdb) r
[ Now edit the file in Emacs, until the breakpoint is hit. ]
(gdb) p mtime
(gdb) p b->modtime

I just now tried all that and got:

(gdb) p mtime
$5 = {
   tv_sec = 1421893112,
   tv_nsec = 705816459
}
(gdb) p b->modtime
$6 = {
   tv_sec = 1421893112,
   tv_nsec = 705816459
}

which is what I'd expect: the last-modified time of the file (mtime) equals the 
buffer's opinion of it (b->modtime). What do you get?