Fix 'dired-goto-file' in Dired buffers produced by find-dired
* lisp/dired.el (dired-goto-file): Try looking for the file as a relative name with leading sub-directories, before looking for the basename alone. (Bug#23089)
This commit is contained in:
parent
3a13472ade
commit
1e1ea22e91
1 changed files with 12 additions and 3 deletions
|
@ -2736,9 +2736,18 @@ instead of `dired-actual-switches'."
|
||||||
(save-excursion
|
(save-excursion
|
||||||
(goto-char (point-min))
|
(goto-char (point-min))
|
||||||
(dired-goto-file-1 file file (point-max)))
|
(dired-goto-file-1 file file (point-max)))
|
||||||
;; Otherwise, look for it as a relative name. The
|
;; Next, look for it as a relative name with leading
|
||||||
;; hair is to get the result of `dired-goto-subdir'
|
;; subdirectories. (This happens in Dired buffers
|
||||||
;; without calling it if we don't have any subdirs.
|
;; created by find-dired, for example.)
|
||||||
|
(save-excursion
|
||||||
|
(goto-char (point-min))
|
||||||
|
(dired-goto-file-1 (file-relative-name file
|
||||||
|
default-directory)
|
||||||
|
file (point-max)))
|
||||||
|
;; Otherwise, look for it as a relative name, a base
|
||||||
|
;; name only. The hair is to get the result of
|
||||||
|
;; `dired-goto-subdir' without calling it if we don't
|
||||||
|
;; have any subdirs.
|
||||||
(save-excursion
|
(save-excursion
|
||||||
(when (if (string= dir (expand-file-name default-directory))
|
(when (if (string= dir (expand-file-name default-directory))
|
||||||
(goto-char (point-min))
|
(goto-char (point-min))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue