emacs-diffs
[Top][All Lists]
Advanced

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

master bd423b8: Fix environment handling in tramp-handle-make-process


From: Michael Albinus
Subject: master bd423b8: Fix environment handling in tramp-handle-make-process
Date: Wed, 20 Jan 2021 12:52:02 -0500 (EST)

branch: master
commit bd423b869978f33bea8d399684f02b0b5b53da43
Author: Michael Albinus <michael.albinus@gmx.de>
Commit: Michael Albinus <michael.albinus@gmx.de>

    Fix environment handling in tramp-handle-make-process
    
    * lisp/net/tramp.el (tramp-test-message): Add `tramp-suppress-trace' 
property.
    (tramp-handle-make-process): Handle also 'tramp-remote-process-environment'.
---
 lisp/net/tramp.el | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 2816c58..7b34a74 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -1990,6 +1990,8 @@ the resulting error message."
             (tramp-dissect-file-name default-directory) 0 fmt-string arguments)
     (apply #'message fmt-string arguments)))
 
+(put #'tramp-test-message 'tramp-suppress-trace t)
+
 ;; This function provides traces in case of errors not triggered by
 ;; Tramp functions.
 (defun tramp-signal-hook-function (error-symbol data)
@@ -3801,15 +3803,20 @@ It does not support `:stderr'."
                    (get-buffer-create buffer)
                  ;; BUFFER can be nil.  We use a temporary buffer.
                  (generate-new-buffer tramp-temp-buffer-name)))
-              ;; We use as environment the difference to toplevel
-              ;; `process-environment'.
               (env (mapcar
                     (lambda (elt)
-                      (unless
-                          (member
-                           elt (default-toplevel-value 'process-environment))
-                        (when (string-match-p "=" elt) elt)))
-                    process-environment))
+                      (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))))
+                       (setq env (cons elt env)))))
               (env (setenv-internal
                     env "INSIDE_EMACS"
                     (concat (or (getenv "INSIDE_EMACS") emacs-version)



reply via email to

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