Subject: Re: bug#66381: 29.1; Auto-revert not polling files when notifications are enabled

From: Daniel Jacobowitz <[email-masked]>
Date: Sat, 7 Oct 2023 14:48:24 -0400

I definitely got that last bit about buffer-stale-function, but I think my
point still stands - the file isn't checked.

On Sat, Oct 7, 2023, 2:41 PM Daniel Jacobowitz <[email-masked]>
wrote:

> Isn't it?
>
> In auto-revert-handler:
> https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/autorevert.el#n779
>
>           (if buffer-file-name
>               (and (or auto-revert-remote-files
>                        (not (file-remote-p buffer-file-name)))
>                    (or (not auto-revert-notify-watch-descriptor)
>                        auto-revert-notify-modified-p)
>                    (if auto-revert-tail-mode
>                        (and (file-readable-p buffer-file-name)
>                             (/= auto-revert-tail-pos
>                                 (setq size
>                                       (file-attribute-size
>                                        (file-attributes
> buffer-file-name)))))
>                      (funcall (or buffer-stale-function
>                                   #'buffer-stale--default-function)
>                               t)))
>
> When buffer-file-name, revert is true iff:
>
> 1. auto-revert-remote-files or the file is not remote
> AND 2. there is no watch descriptor or a notification was received
> AND 3. some details about auto-revert-tail-mode OR t
>
> If auto-revert-notify-watch-descriptor and not
> auto-revert-notify-modified-p, then the file won't be reverted.
> auto-revert-handler does get called by the polling timer, but it
> doesn't revert.
>
>
> On Sat, Oct 7, 2023 at 2:28 PM Eli Zaretskii <[email-masked]> wrote:
> >
> > > From: Daniel Jacobowitz <[email-masked]>
> > > Date: Sat, 7 Oct 2023 14:14:45 -0400
> > > Cc: [email-masked], Eli Zaretskii <[email-masked]>
> > >
> > > Coming back to my original suggestion: the documentation says that
> polling is used even if
> > > notifications are enabled. The implementation does not poll if there's
> a notification registered.
> >
> > That last sentence is not true.
>
>
>
> --
> Thanks,
> Daniel
>