GNU bug report logs - #27633
26.0.50; Dired doesn't update buffer when wildcards have changed

Previous Next

Package: emacs;

Reported by: Tino Calancha <tino.calancha <at> gmail.com>

Date: Mon, 10 Jul 2017 03:03:01 UTC

Severity: minor

Tags: easy

Merged with 7131

Found in versions 24.0.50, 26.0.50

Done: Tino Calancha <tino.calancha <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Tino Calancha <tino.calancha <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 26.0.50; Dired doesn't update buffer when wildcards have changed
Date: Mon, 10 Jul 2017 12:02:16 +0900
A 2nd Dired call on the same directory must update
the buffer when the wildcards have changed.

emacs -Q -l dired -eval '(dired (expand-file-name "lisp" source-directory))'
M-: (dired (list default-directory "simple.el")) RET
;; Same Dired buffer.
C-x k RET ; kill the buffer.

;; Show Dired buffer with just 'simple.el':
M-: (dired (list (expand-file-name "lisp" source-directory) "simple.el")) RET
C-x d RET ; Same Dired buffer.

--8<-----------------------------cut here---------------start------------->8---
commit 8772e1bede02b1509fccef0445238e1ec9227a53
Author: Tino Calancha <tino.calancha <at> gmail.com>
Date:   Mon Jul 10 12:00:53 2017 +0900

    Revert Dired buffer if wildcards have change
    
    A 2nd Dired call in the same directory must update
    the buffer if the wildcards have changed (Bug#27633).
    * lisp/dired.el (dired-internal-noselect):
    Revert Dired buffer if wildcards change.

diff --git a/lisp/dired.el b/lisp/dired.el
index 0c1f3e4af6..667cf7fba6 100644
--- a/lisp/dired.el
+++ b/lisp/dired.el
@@ -898,6 +898,10 @@ dired-internal-noselect
 	       (setq dired-directory dir-or-list)
 	       ;; this calls dired-revert
 	       (dired-sort-other switches))
+	      ;; wildcards have changed.
+	      ((not (equal dired-directory dir-or-list))
+	       (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))
--8<-----------------------------cut here---------------end--------------->8---
In GNU Emacs 26.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.11)
 of 2017-07-09 built
Repository revision: 273f4bde39af5d87f10fd58f35b666dfa8a996a3




This bug report was last modified 7 years and 308 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.