GNU bug report logs -
#11303
Whitespace mode causes auto-save to malfunction
Previous Next
Reported by: Kelly Dean <kellydeanch <at> yahoo.com>
Date: Sat, 21 Apr 2012 17:50:02 UTC
Severity: normal
Tags: confirmed
Found in version 26.1
Fixed in version 29.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
Message #18 received at 11303 <at> debbugs.gnu.org (full text, mbox):
> From: Lars Ingebrigtsen <larsi <at> gnus.org>
> Date: Fri, 16 Jul 2021 13:55:44 +0200
> Cc: 11303 <at> debbugs.gnu.org
>
> Kelly Dean <kellydeanch <at> yahoo.com> writes:
>
> > Start Emacs with no options.
> > Open a file, press space, wait for the timeout, press C-g, and wait
> > for the timeout again. Notice that Emacs does write the auto-save file
> > again, even though the buffer hasn't changed since the last
> > auto-save. This is not the correct behavior.
>
> This problem is still present in Emacs 28.
>
> Poking around a bit at this, it seems that it's the call to
>
> (jit-lock-refontify (point-min) (point-max))
>
> that makes `M-x do-auto-save' auto-save again (even if nothing has
> changed except the text properties in the buffer).
>
> I.e., doing
>
> (put-text-property 1 3 'face 'bold)
>
> will make the buffer eligible for auto-saving again, even if putting
> those text properties into the buffer doesn't switch from unmodified to
> modified.
>
> That's pretty inconsistent behaviour, at least? I'm guessing this stems
> from text properties upping the BUF_MODIFF, but not changing the buffer
> modification status.
>
> Does this sound like the correct analysis? If so, what can we do about
> it? (`with-silent-modifications' doesn't seem to have any effect here.)
The OP's recipe includes C-g, which could mean we lack an
unwind-protect somewhere, and the buffer stays modified due to changes
in faces.
The fact that changes in faces cause the buffer become eligible for
auto-saving is not a bug, IMO, it's a feature.
This bug report was last modified 3 years and 12 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.