emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[nongnu] elpa/git-commit 8269af107f 12/12: magit-generate-new-buffer: De


From: ELPA Syncer
Subject: [nongnu] elpa/git-commit 8269af107f 12/12: magit-generate-new-buffer: Determine appropriate default-directory
Date: Fri, 13 May 2022 10:58:12 -0400 (EDT)

branch: elpa/git-commit
commit 8269af107f619e10c588ee0b8a81b9e3ec077a98
Author: Jonas Bernoulli <jonas@bernoul.li>
Commit: Jonas Bernoulli <jonas@bernoul.li>

    magit-generate-new-buffer: Determine appropriate default-directory
---
 lisp/magit-mode.el      | 11 +++++------
 lisp/magit-process.el   |  4 ++--
 lisp/magit-submodule.el |  3 +--
 3 files changed, 8 insertions(+), 10 deletions(-)

diff --git a/lisp/magit-mode.el b/lisp/magit-mode.el
index 4cefd402de..213c616816 100644
--- a/lisp/magit-mode.el
+++ b/lisp/magit-mode.el
@@ -604,8 +604,7 @@ your mode instead of adding an entry to this variable.")
          (section (and buffer (magit-current-section)))
          (created (not buffer)))
     (unless buffer
-      (setq buffer (magit-with-toplevel
-                     (magit-generate-new-buffer mode value))))
+      (setq buffer (magit-generate-new-buffer mode value)))
     (with-current-buffer buffer
       (setq magit-previous-section section)
       (funcall mode)
@@ -641,8 +640,7 @@ locked to its value, which is derived from MODE and ARGS."
          (section (and buffer (magit-current-section)))
          (created (not buffer)))
     (unless buffer
-      (setq buffer (magit-with-toplevel
-                     (magit-generate-new-buffer mode value))))
+      (setq buffer (magit-generate-new-buffer mode value)))
     (with-current-buffer buffer
       (setq magit-previous-section section)
       (with-no-warnings
@@ -887,8 +885,9 @@ If a frame, then only consider buffers on that frame."
                          (window-list (unless (eq frame t) frame)))
                (buffer-list)))))
 
-(defun magit-generate-new-buffer (mode &optional value)
-  (let* ((name (funcall magit-generate-buffer-name-function mode value))
+(defun magit-generate-new-buffer (mode &optional value directory)
+  (let* ((default-directory (or directory (magit--toplevel-safe)))
+         (name (funcall magit-generate-buffer-name-function mode value))
          (buffer (generate-new-buffer name)))
     (with-current-buffer buffer
       (setq magit--default-directory default-directory)
diff --git a/lisp/magit-process.el b/lisp/magit-process.el
index 6dd347a0c1..65b7291180 100644
--- a/lisp/magit-process.el
+++ b/lisp/magit-process.el
@@ -300,8 +300,8 @@ optional NODISPLAY is non-nil also display it."
                                  (and (eq major-mode 'magit-process-mode)
                                       (equal default-directory topdir)))
                                (buffer-list))
-                      (let ((default-directory topdir))
-                        (magit-generate-new-buffer 'magit-process-mode)))))
+                      (magit-generate-new-buffer 'magit-process-mode
+                                                 nil topdir))))
       (with-current-buffer buffer
         (if magit-root-section
             (when magit-process-log-max
diff --git a/lisp/magit-submodule.el b/lisp/magit-submodule.el
index 2179fa10a2..0625e20d22 100644
--- a/lisp/magit-submodule.el
+++ b/lisp/magit-submodule.el
@@ -651,8 +651,7 @@ These sections can be expanded to show the respective 
commits."
 (defun magit-submodule-list-setup (columns &optional predicate)
   (magit-display-buffer
    (or (magit-get-mode-buffer 'magit-submodule-list-mode)
-       (magit-with-toplevel
-         (magit-generate-new-buffer 'magit-submodule-list-mode))))
+       (magit-generate-new-buffer 'magit-submodule-list-mode)))
   (magit-submodule-list-mode)
   (setq-local magit-repolist-columns columns)
   (setq-local magit-repolist-sort-key magit-submodule-list-sort-key)



reply via email to

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