diff options
Diffstat (limited to 'lisp/diff-mode.el')
-rw-r--r-- | lisp/diff-mode.el | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lisp/diff-mode.el b/lisp/diff-mode.el index 8caed2bf1ef..e89aa0e3334 100644 --- a/lisp/diff-mode.el +++ b/lisp/diff-mode.el @@ -672,6 +672,7 @@ data such as \"Index: ...\" and such." ;;;; (defvar diff-remembered-files-alist nil) +(defvar diff-remembered-defdir nil) (defun diff-filename-drop-dir (file) (when (string-match "/" file) (substring file (match-end 0)))) @@ -745,6 +746,10 @@ Non-nil OLD means that we want the old file. Non-nil BATCH means to prefer returning an incorrect answer than to prompt the user. PREFIX is only used internally: don't use it." + (unless (equal diff-remembered-defdir default-directory) + ;; Flush diff-remembered-files-alist if the default-directory is changed. + (set (make-local-variable 'diff-remembered-defdir) default-directory) + (set (make-local-variable 'diff-remembered-files-alist) nil)) (save-excursion (unless (looking-at diff-file-header-re) (or (ignore-errors (diff-beginning-of-file)) |