fix(magit): +magit-auto-revert: handle edge cases

In cases where user have changed `vc-follow-symlinks`,
causing *Messages* spam and unexpected prompting, OR where revert-buffer
hooks and handlers are prematurely triggered for file buffers that
haven't been changed.

Fix: #8392
This commit is contained in:
Henrik Lissner
2025-05-14 22:34:16 +02:00
parent 4be8557eb3
commit 6c1965b1ed

View File

@ -114,9 +114,12 @@ window that already exists in that direction. It will split otherwise."
(kill-local-variable '+magit--stale-p)
(when (magit-auto-revert-repository-buffer-p buffer)
(save-restriction
(cl-incf magit-auto-revert-counter)
(when (bound-and-true-p vc-mode)
(vc-refresh-state))
(when (and buffer-file-name (not (buffer-modified-p buffer)))
(let ((vc-follow-symlinks t))
(vc-refresh-state)))
(when (and (not (get-buffer-process buffer))
(funcall buffer-stale-function t))
(revert-buffer t t t))
(force-mode-line-update)))))