dired: Revert buffer when DIRNAME is a cons
* lisp/dired.el (dired-internal-noselect): Revert buffer if DIR-OR-LIST is a cons, or dired-directory is a cons and DIR-OR-LIST a string (Bug#7131). Update the comments. * test/lisp/dired-tests.el (dired-test-bug7131): Test should pass.
This commit is contained in:
parent
76268499dd
commit
1d559e384b
2 changed files with 9 additions and 3 deletions
|
@ -872,13 +872,15 @@ periodically reverts at specified time intervals."
|
|||
:version "23.2")
|
||||
|
||||
(defun dired-internal-noselect (dir-or-list &optional switches mode)
|
||||
;; If there is an existing dired buffer for DIRNAME, just leave
|
||||
;; buffer as it is (don't even call dired-revert).
|
||||
;; If DIR-OR-LIST is a string and there is an existing dired buffer
|
||||
;; for it, just leave buffer as it is (don't even call dired-revert).
|
||||
;; This saves time especially for deep trees or with ange-ftp.
|
||||
;; The user can type `g' easily, and it is more consistent with find-file.
|
||||
;; But if SWITCHES are given they are probably different from the
|
||||
;; buffer's old value, so call dired-sort-other, which does
|
||||
;; revert the buffer.
|
||||
;; Revert the buffer if DIR-OR-LIST is a cons or `dired-directory'
|
||||
;; is a cons and DIR-OR-LIST is a string.
|
||||
;; A pity we can't possibly do "Directory has changed - refresh? "
|
||||
;; like find-file does.
|
||||
;; Optional argument MODE is passed to dired-find-buffer-nocreate,
|
||||
|
@ -898,6 +900,11 @@ periodically reverts at specified time intervals."
|
|||
(setq dired-directory dir-or-list)
|
||||
;; this calls dired-revert
|
||||
(dired-sort-other switches))
|
||||
;; Always revert when `dir-or-list' is a cons. Also revert
|
||||
;; if `dired-directory' is a cons but `dir-or-list' is not.
|
||||
((or (consp dir-or-list) (consp dired-directory))
|
||||
(setq dired-directory dir-or-list)
|
||||
(revert-buffer))
|
||||
;; Always revert regardless of whether it has changed or not.
|
||||
((eq dired-auto-revert-buffer t)
|
||||
(revert-buffer))
|
||||
|
|
|
@ -131,7 +131,6 @@
|
|||
|
||||
(ert-deftest dired-test-bug7131 ()
|
||||
"Test for http://debbugs.gnu.org/7131 ."
|
||||
:expected-result :failed
|
||||
(let* ((dir (expand-file-name "lisp" source-directory))
|
||||
(buf (dired dir)))
|
||||
(unwind-protect
|
||||
|
|
Loading…
Add table
Reference in a new issue