GNU bug report logs - #49893
[PATCH] Reset mtime of a reverted buffer

Previous Next

Package: emacs;

Reported by: Konstantin Kharlamov <hi-angel <at> yandex.ru>

Date: Thu, 5 Aug 2021 15:29:02 UTC

Severity: normal

Tags: patch

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Konstantin Kharlamov <hi-angel <at> yandex.ru>
Subject: bug#49893: closed (Re: bug#49893: [PATCH] Reset mtime of a
 reverted buffer)
Date: Thu, 05 Aug 2021 17:52:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#49893: [PATCH] Reset mtime of a reverted buffer

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 49893 <at> debbugs.gnu.org.

-- 
49893: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=49893
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Eli Zaretskii <eliz <at> gnu.org>
To: Konstantin Kharlamov <hi-angel <at> yandex.ru>
Cc: 49893-done <at> debbugs.gnu.org
Subject: Re: bug#49893: [PATCH] Reset mtime of a reverted buffer
Date: Thu, 05 Aug 2021 20:51:31 +0300
> From: Konstantin Kharlamov <hi-angel <at> yandex.ru>
> Cc: 49893 <at> debbugs.gnu.org
> Date: Thu, 05 Aug 2021 19:54:03 +0300
> 
> On Thu, 2021-08-05 at 19:36 +0300, Eli Zaretskii wrote:
> > > From: Konstantin Kharlamov <hi-angel <at> yandex.ru>
> > > Date: Thu, 05 Aug 2021 18:28:28 +0300
> > > 
> > > Patch is attached. This resolves the problem reported at
> > > https://github.com/emacs-evil/evil/issues/1504
> > 
> > Could you please describe the problem you are trying to solve,
> > preferably without involving Evil?
> 
> Sure. The auto-revert-mode by default works with ‘revert-buffer-insert-file-contents--default-function’ function. This function is known to break markers in buffers, which is why recently Emacs has added a replacement function revert-buffer-insert-file-contents-delicately (the one I modify in the patch).
> 
> However, actually trying to use this new function revealed a regression in behavior of another function: the `find-file`. Basically, if you have a file `/tmp/foo` opened in Emacs (IOW Emacs has a buffer associated with this file), and then file `/tmp/foo` gets "auto-reverted", then if you execute (find-file "/tmp/foo"), the new function causes Emacs ask a user "File foo was modified, do you want to revert it? (yes/no)". It now gives that prompt always, until you make a change to the buffer.
> 
> That's a regression compared to the default behavior with `revert-buffer-insert-file-contents--default-function`. And the reason turned out to be that the function `revert-buffer-insert-file-contents--default-function` after having succesfully reverted a file, sets the buffer mtime to the mtime of the file. However the function revert-buffer-insert-file-contents-delicately didn't set mtime before that patch. I assume it is an omission from implementation, because technically that's incorrect: if the revert-buffer-insert-file-contents-delicately has successfully reverted a buffer, then we know that it has same content as the associated file, and hence it should have the same mtime.

Thanks.  I installed the change on the master branch.

[Message part 3 (message/rfc822, inline)]
From: Konstantin Kharlamov <hi-angel <at> yandex.ru>
To: bug-gnu-emacs <at> gnu.org
Subject: [PATCH] Reset mtime of a reverted buffer
Date: Thu, 05 Aug 2021 18:28:28 +0300
[Message part 4 (text/plain, inline)]
Patch is attached. This resolves the problem reported at https://github.com/emacs-evil/evil/issues/1504


[1.patch (text/x-patch, attachment)]

This bug report was last modified 3 years and 289 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.