diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 015f458a63..3749f84e21 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -3938,21 +3938,23 @@ tramp-handle-make-process (when (string-match-p "=" elt) elt)) tramp-remote-process-environment)) ;; We use as environment the difference to toplevel ;; `process-environment'. (env (dolist (elt process-environment env) (when (and (string-match-p "=" elt) (not (member - elt (default-toplevel-value 'process-environment)))) + elt (default-toplevel-value 'process-environment))) + (not (member (car (split-string elt "=")) + tramp-remote-process-environment))) (setq env (cons elt env))))) (env (setenv-internal env "INSIDE_EMACS" (tramp-inside-emacs) 'keep)) (env (mapcar #'tramp-shell-quote-argument (delq nil env))) ;; Quote command. (command (mapconcat #'tramp-shell-quote-argument command " ")) ;; Set cwd and environment variables. (command (append `("cd" ,localname "&&" "(" "env") env `(,command ")"))))