Subject: bug#14824: 24.3.50; Regression: problem with undo in Mail mode

From: "Aaron S. Hawley" <[email-masked]>
Date: Tue, 9 Jul 2013 10:20:48 -0400

> A shot in the dark: it might be due to the finer timestamps (since
> these were introduced fairly recently, whereas Aaron's code is actually
> pretty old (even tho it was installed only recently)).

That is a good theory.  I remember studying the time precision changes
by Paul Eggert from last year.  I think these were them:

http://bzr.savannah.gnu.org/lh/emacs/trunk/revision/108687
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9000

The changes to time values in Emacs were a concern of mine when the
new Lisp version of undo was finally merged to trunk.  I don't have an
Emacs trunk build at the moment, so I can't confirm.  It would be this
section of the new undo code, though:

http://bzr.savannah.gnu.org/lh/emacs/trunk/annotate/113327/lisp/simple.el#L2132

I am a little surprised this was broken in trunk for the last 6
months, and nobody had noticed.  The automated test suite could catch
this by adding a line containing (should (not (buffer-modified-p))) to
one of the unit tests.