emacs-diffs
[Top][All Lists]
Advanced

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

emacs-27 e1deafd: Backport: Fix bug 39218


From: Tino Calancha
Subject: emacs-27 e1deafd: Backport: Fix bug 39218
Date: Thu, 23 Jan 2020 04:59:40 -0500 (EST)

branch: emacs-27
commit e1deafd39d9ef32cfa54c0be498f26857bf49c25
Author: Tino Calancha <address@hidden>
Commit: Tino Calancha <address@hidden>

    Backport: Fix bug 39218
    
    * lisp/simple.el (shell-command):
    Ensure a shell command ending with `&' is run asynchronously.
---
 lisp/simple.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lisp/simple.el b/lisp/simple.el
index 3546bef..73aea41 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -3640,10 +3640,11 @@ impose the use of a shell (with its need to quote 
arguments)."
     (if handler
        (funcall handler 'shell-command command output-buffer error-buffer)
       (if (and output-buffer
+               (not (string-match "[ \t]*&[ \t]*\\'" command))
                (or (eq output-buffer (current-buffer))
                    (and (stringp output-buffer) (eq (get-buffer output-buffer) 
(current-buffer)))
                   (not (or (bufferp output-buffer) (stringp output-buffer))))) 
; Bug#39067
-         ;; Output goes in current buffer.
+         ;; Synchronous command with output in current buffer.
          (let ((error-file
                  (and error-buffer
                       (make-temp-file



reply via email to

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