GNU bug report logs - #75626
31.0.50; Dired misses or double-processes files when auto-revert-mode is enabled

Previous Next

Package: emacs;

Reported by: Tassilo Horn <tsdh <at> gnu.org>

Date: Fri, 17 Jan 2025 07:43:01 UTC

Severity: normal

Found in version 31.0.50

Done: Tassilo Horn <tsdh <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #253 received at 75626-done <at> debbugs.gnu.org (full text, mbox):

From: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Tassilo Horn <tsdh <at> gnu.org>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 75626-done <at> debbugs.gnu.org,
 michael.albinus <at> gmx.de
Subject: Re: bug#75626: 31.0.50; Dired misses or double-processes files when
 auto-revert-mode is enabled
Date: Wed, 29 Jan 2025 00:58:43 +0100
Tassilo Horn <tsdh <at> gnu.org> writes:

> > We could try to catch more of these situations programmatically.  We
> > could, for example, change `dired-buffer-stale-p' to return non-nil
> > when the selected window is an active minibuffer window and
> > `minibuffer-selected-window' is a window displaying the buffer which
> > is queried to be auto-reverted.  With other words: avoid auto revert
> > whenever the user is currently in a prompt from a command started in a
> > dired buffer.

> Maybe make sense but it doesn't work.  I tried with dired-do-compress
> and many marked files.  That will first create a *Marked Files* buffer,
> show that as a new bottom window, and then invoke the prompting function
> like yes-or-no-p.  I.e., (minibuffer-selected-window) is the window
> showing the *Marked Files* buffer, not the original dired buffer.

I see.  There are other implementation options: we could try to use the
buffer local bindings of `pre-command-hook' and `post-command-hook' to
set `dired--inhibit-auto-revert' non-nil whenever a command is processed
that had been started from a dired buffer.  Or just check `this-command'
for whether its name matches "\\`dired".  But of all these solutions are
probably not really optimal.  Is there a clean solution?

OTOH, going through the command definitions in dired.el will not solve
the problem for third party packages and user written commands.


Michael.




This bug report was last modified 196 days ago.

Previous Next


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