From: Michael Albinus Date: Thu, 6 Sep 2018 10:16:00 +0000 (+0200) Subject: Fix Bug#31704 X-Git-Tag: emacs-27.0.90~4456 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=bca35315e16cb53415649e5c0ac2ec0cc1368679;p=emacs.git Fix Bug#31704 * lisp/eshell/esh-proc.el (eshell-gather-process-output): Do not let `expand-file-name' prefix remote file names with MS Windows volume letter. * lisp/net/tramp.el (tramp-eshell-directory-change): Use `path-separator' as it does eshell. (Bug#31704) --- diff --git a/lisp/eshell/esh-proc.el b/lisp/eshell/esh-proc.el index a7855d81db5..3735f30c304 100644 --- a/lisp/eshell/esh-proc.el +++ b/lisp/eshell/esh-proc.el @@ -282,11 +282,10 @@ See `eshell-needs-pipe'." (let ((process-connection-type (unless (eshell-needs-pipe-p command) process-connection-type)) - (command (file-local-name command))) + ;; `start-process' can't deal with relative filenames. + (command (file-local-name (expand-file-name command)))) (apply 'start-file-process - (file-name-nondirectory command) nil - ;; `start-process' can't deal with relative filenames. - (append (list (expand-file-name command)) args)))) + (file-name-nondirectory command) nil command args))) (eshell-record-process-object proc) (set-process-buffer proc (current-buffer)) (if (eshell-interactive-output-p) diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 0033f2c1700..07154b57f20 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -4623,8 +4623,10 @@ Only works for Bourne-like shells." (defun tramp-eshell-directory-change () "Set `eshell-path-env' to $PATH of the host related to `default-directory'." ;; Remove last element of `(exec-path)', which is `exec-directory'. + ;; Use `path-separator' as it does eshell. (setq eshell-path-env - (mapconcat 'identity (butlast (tramp-compat-exec-path)) ":"))) + (mapconcat + 'identity (butlast (tramp-compat-exec-path)) path-separator))) (eval-after-load "esh-util" '(progn