emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

emacs-29 5be94e2bce5: Fix opening directory trees from Filesets menu


From: Eli Zaretskii
Subject: emacs-29 5be94e2bce5: Fix opening directory trees from Filesets menu
Date: Sat, 16 Dec 2023 06:29:52 -0500 (EST)

branch: emacs-29
commit 5be94e2bce53f9826b64d3566a0d5524aeccbccd
Author: Eli Zaretskii <eliz@gnu.org>
Commit: Eli Zaretskii <eliz@gnu.org>

    Fix opening directory trees from Filesets menu
    
    In bug#976, the code was fixed, but the cautious condition in
    the original author's code, which catered to invoking
    'filelists-open' from the menu-bar menu, was omitted, which made
    that invocation, which did work before, broken.
    * lisp/filesets.el (filesets-get-filelist): Fix opening directory
    trees from the Filesets menu-bar menu.  (Bug#67658)
---
 lisp/filesets.el | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/lisp/filesets.el b/lisp/filesets.el
index 1b7e6ffa81f..d00a29c2ebf 100644
--- a/lisp/filesets.el
+++ b/lisp/filesets.el
@@ -1653,7 +1653,17 @@ Assume MODE (see `filesets-entry-mode'), if provided."
                                (filesets-entry-get-master entry)))))
                  (cons entry (filesets-ingroup-cache-get entry))))
               (:tree
-                (let* ((dirpatt (filesets-entry-get-tree entry))
+                ;; Warning: ENTRY here could be of at least two
+                ;; differente forms, either
+                ;;    (NAME (:tree DIRECTORY PATTERN))
+                ;; or
+                ;;    (DIRECTORY PATTERN)
+                ;; The latter happens when opening a tree fileset
+                ;; from the Filesets menu.  We need to support both
+                ;; of these forms!
+                (let* ((dirpatt (if (consp (nth 1 entry))
+                                    (filesets-entry-get-tree entry)
+                                  entry))
                        (dir (nth 0 dirpatt))
                        (patt (nth 1 dirpatt))
                        (depth (or (filesets-entry-get-tree-max-level entry)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]