diff options
author | Jim Porter <jporterbugs@gmail.com> | 2023-01-22 22:54:53 -0800 |
---|---|---|
committer | Jim Porter <jporterbugs@gmail.com> | 2023-01-23 09:48:09 -0800 |
commit | 7f438ff543b7bd83cee6c75be1d16abc1215d37f (patch) | |
tree | ddca7acf2572a39268ce5d6ead0182861f8b2e80 /lisp/eshell/esh-proc.el | |
parent | cb9628373a8dcb5ace0cb8fcc7b636dea39b5703 (diff) | |
download | emacs-7f438ff543b7bd83cee6c75be1d16abc1215d37f.tar.gz emacs-7f438ff543b7bd83cee6c75be1d16abc1215d37f.tar.bz2 emacs-7f438ff543b7bd83cee6c75be1d16abc1215d37f.zip |
Don't try to make a pipe process for remote processes in Eshell
Tramp currently isn't able to handle this, so the result will just
produce an error (bug#61024).
* lisp/eshell/esh-proc.el (eshell-gather-process-output): Check for a
remote 'default-directory' before trying to make a pipe process.
* test/lisp/eshell/esh-proc-tests.el
(esh-var-test/output/remote-redirect): New test.
Diffstat (limited to 'lisp/eshell/esh-proc.el')
-rw-r--r-- | lisp/eshell/esh-proc.el | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lisp/eshell/esh-proc.el b/lisp/eshell/esh-proc.el index f1ec3a905b6..fcd59ab9f37 100644 --- a/lisp/eshell/esh-proc.el +++ b/lisp/eshell/esh-proc.el @@ -296,8 +296,13 @@ Used only on systems which do not support async subprocesses.") 'unix)))) (cond ((fboundp 'make-process) - (unless (equal (car (aref eshell-current-handles eshell-output-handle)) - (car (aref eshell-current-handles eshell-error-handle))) + (unless (or ;; FIXME: It's not currently possible to use a + ;; stderr process for remote files. + (file-remote-p default-directory) + (equal (car (aref eshell-current-handles + eshell-output-handle)) + (car (aref eshell-current-handles + eshell-error-handle)))) (eshell-protect-handles eshell-current-handles) (setq stderr-proc (make-pipe-process |