Backport: Fix bug 39218
* lisp/simple.el (shell-command): Ensure a shell command ending with `&' is run asynchronously.
This commit is contained in:
parent
d15f2d4cbc
commit
e1deafd39d
1 changed files with 2 additions and 1 deletions
|
@ -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
|
||||
|
|
Loading…
Add table
Reference in a new issue