From 30ad2b8acef36a3ab14f045bca94d7987ecd96e8 Mon Sep 17 00:00:00 2001 From: Jared Finder Date: Sat, 16 Dec 2023 12:10:03 -0800 Subject: [PATCH] Clicks on directory line kill prev buffer if option is set The option dired-kill-when-opening-new-dired-buffer should be checked in this code path as well. * lisp/dired.el (dired--make-directory-clickable): Call dired--find-possibly-alternative-file instead of dired in click callback. --- lisp/dired.el | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/lisp/dired.el b/lisp/dired.el index 33e38ed2c1c..fc91b58ecad 100644 --- a/lisp/dired.el +++ b/lisp/dired.el @@ -2010,9 +2010,18 @@ dired--make-directory-clickable keymap ,(let* ((current-dir dir) (click (lambda () (interactive) - (if (assoc current-dir dired-subdir-alist) - (dired-goto-subdir current-dir) - (dired current-dir))))) + (cond + ((assoc current-dir dired-subdir-alist) + (dired-goto-subdir current-dir)) + ;; If there is a wildcard character in the directory, don't + ;; use the alternate file machinery which tries to keep only + ;; one dired buffer open at once. + ;; + ;; FIXME: Is this code path reachable? + ((insert-directory-wildcard-in-dir-p current-dir) + (dired current-dir)) + (t + (dired--find-possibly-alternative-file current-dir)))))) (define-keymap "" click "" 'mouse-face -- 2.39.2