From 44d7d150a1110c0457fa75386023f2853af2651e Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Mon, 6 Oct 2003 22:52:52 +0000 Subject: [PATCH] (log-edit-changelog-entries): Prefer local value of change-log-default-name in the buffer visiting the file. --- lisp/log-edit.el | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/lisp/log-edit.el b/lisp/log-edit.el index 31bf7add457..fa7ea4e842d 100644 --- a/lisp/log-edit.el +++ b/lisp/log-edit.el @@ -564,12 +564,21 @@ where LOGBUFFER is the name of the ChangeLog buffer, and each (save-excursion (let ((changelog-file-name (let ((default-directory - (file-name-directory (expand-file-name file)))) - ;; `find-change-log' uses `change-log-default-name' if set - ;; and sets it before exiting, so we need to work around - ;; that memoizing which is undesired here - (setq change-log-default-name nil) - (find-change-log)))) + (file-name-directory (expand-file-name file))) + (visiting-buffer (find-buffer-visiting file))) + ;; If there is a buffer visiting FILE, and it has a local + ;; value for `change-log-default-name', use that. + (if (and visiting-buffer + (local-variable-p 'change-log-default-name + visiting-buffer)) + (save-excursion + (set-buffer visiting-buffer) + change-log-default-name) + ;; `find-change-log' uses `change-log-default-name' if set + ;; and sets it before exiting, so we need to work around + ;; that memoizing which is undesired here + (setq change-log-default-name nil) + (find-change-log))))) (set-buffer (find-file-noselect changelog-file-name)) (unless (eq major-mode 'change-log-mode) (change-log-mode)) (goto-char (point-min)) -- 2.39.2