Subject: bug#75626: 31.0.50; Dired misses or double-processes files when auto-revert-mode is enabled

From: Drew Adams <[email-masked]>
Date: Mon, 20 Jan 2025 19:20:10 +0000

> > Is that necessary?  I can't see why it would be.
> 
> It is necessary because the macro must "freeze" the marked file while
> it maps over them.  Otherwise, the macro doesn't work on a snapshot,
> it works on a list that could change under its feet, which is not a
> good way of writing programs that must give predictable results.

The macro _doesn't_ map over files.  It maps
over the marked _lines_.  The macro is all
about the displayed Dired buffer (listing(s)).
It need not do anything with or to any of the
files listed on the marked lines.

I do agree that normally, usually, most of
the time a _use_ of the macro will not want
to allow the display to change while it's
processing a particular marked line.

What I don't (yet) agree with (or see) is
the constraint that the macro should, itself,
prevent things while it's iterating over the
marked lines and invoking a function when on
each one, in turn.

I don't understand why we wouldn't, as always
till now, leave any such "prevention", or
other control, up to the code that invokes
the macro.