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

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

[elpa] externals/dtache 77d6ad3ac3 2/4: Improve buffer handling with dta


From: ELPA Syncer
Subject: [elpa] externals/dtache 77d6ad3ac3 2/4: Improve buffer handling with dtache-shell-command
Date: Thu, 20 Jan 2022 11:57:42 -0500 (EST)

branch: externals/dtache
commit 77d6ad3ac3bc2d51f2c679431cdbccd2cf165011
Author: Niklas Eklund <niklas.eklund@posteo.net>
Commit: Niklas Eklund <niklas.eklund@posteo.net>

    Improve buffer handling with dtache-shell-command
    
    This patch updates the way new buffers are generated with
    dtache-shell-command. A new buffer will only be issued if the existing
    one is occupied.
---
 dtache.el | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/dtache.el b/dtache.el
index 0bdbf6dbab..087df01cbc 100644
--- a/dtache.el
+++ b/dtache.el
@@ -333,9 +333,11 @@ Optionally SUPPRESS-OUTPUT."
         (if (not (dtache--session-attachable session))
             (dtache-tail-output session)
           (cl-letf* (((symbol-function #'set-process-sentinel) #'ignore)
-                     (buffer dtache--shell-command-buffer)
+                     (buffer (get-buffer-create dtache--shell-command-buffer))
                      (default-directory (dtache--session-working-directory 
session))
                      (dtach-command (dtache-dtach-command session t)))
+            (when (get-buffer-process buffer)
+              (setq buffer (generate-new-buffer (buffer-name buffer))))
             (funcall #'async-shell-command dtach-command buffer)
             (with-current-buffer buffer (setq dtache--buffer-session 
dtache--current-session))))))))
 
@@ -540,7 +542,9 @@ Optionally SUPPRESS-OUTPUT."
                       `("dtache" nil ,(dtache-dtach-command 
dtache--current-session t))))
       (cl-letf* ((dtache-session-mode 'create-and-attach)
                  ((symbol-function #'set-process-sentinel) #'ignore)
-                 (buffer (generate-new-buffer-name 
dtache--shell-command-buffer)))
+                 (buffer (get-buffer-create dtache--shell-command-buffer)))
+        (when (get-buffer-process buffer)
+          (setq buffer (generate-new-buffer (buffer-name buffer))))
         (setq dtache-enabled nil)
         (funcall #'async-shell-command (dtache-dtach-command 
dtache--current-session t) buffer)
         (with-current-buffer buffer (setq dtache--buffer-session 
dtache--current-session))))))



reply via email to

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