Make rename buffer check early

When users customize `denote-rename-buffer-function' without checking
whether the current buffer is a Denote buffer, `find-file-hook' may
trigger unintended renames.

Because `denote-rename-buffer' accepts an optional buffer argument, the
Denote buffer check must be performed twice.

* (denote-rename-buffer-rename-function-or-fallback):
This commit is contained in:
duli 2026-01-14 21:50:37 +08:00
parent 47207e9cb2
commit e9e8f6f91e
No known key found for this signature in database
GPG key ID: 0C378F00219F31FD

View file

@ -7237,7 +7237,9 @@ This is called if `denote-rename-buffer-rename-function' is nil."
(defun denote-rename-buffer-rename-function-or-fallback ()
"Call `denote-rename-buffer-function' or its fallback to rename with title.
Add this to `find-file-hook' and `denote-after-new-note-hook'."
(funcall (or denote-rename-buffer-function #'denote-rename-buffer--fallback)))
(when-let* ((file (buffer-file-name))
((denote-file-has-identifier-p file)))
(funcall (or denote-rename-buffer-function #'denote-rename-buffer--fallback))))
;;;###autoload
(define-minor-mode denote-rename-buffer-mode