emacs-diffs
[Top][All Lists]
Advanced

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

emacs-29 bee18e52737: Fix bug#66093 in Tramp


From: Michael Albinus
Subject: emacs-29 bee18e52737: Fix bug#66093 in Tramp
Date: Sun, 24 Sep 2023 11:15:16 -0400 (EDT)

branch: emacs-29
commit bee18e527379d2474e7a4ca62c53b6f21d8f9315
Author: Michael Albinus <michael.albinus@gmx.de>
Commit: Michael Albinus <michael.albinus@gmx.de>

    Fix bug#66093 in Tramp
    
    * lisp/net/tramp-sshfs.el (tramp-methods): Use "%a".
    (tramp-sshfs-handle-process-file): Replace ?a by "-t".
    
    * lisp/net/tramp.el (tramp-methods): Adapt docstring.  (Bug#66093)
    (tramp-handle-make-process): Replace ?a by "-t" if indicated.
---
 lisp/net/tramp-sshfs.el |  4 ++--
 lisp/net/tramp.el       | 11 +++++++----
 2 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/lisp/net/tramp-sshfs.el b/lisp/net/tramp-sshfs.el
index c638d32ec35..ace9b3bda4a 100644
--- a/lisp/net/tramp-sshfs.el
+++ b/lisp/net/tramp-sshfs.el
@@ -60,7 +60,7 @@
                ;; These are for remote processes.
                 (tramp-login-program        "ssh")
                 (tramp-login-args           (("-q") ("-l" "%u") ("-p" "%p")
-                                            ("-e" "none") ("-t" "-t")
+                                            ("-e" "none") ("%a" "%a")
                                             ("%h") ("%l")))
                 (tramp-direct-async         t)
                 (tramp-remote-shell         ,tramp-default-remote-shell)
@@ -323,7 +323,7 @@ arguments to pass to the OPERATION."
            ?h (or (tramp-file-name-host v) "")
            ?u (or (tramp-file-name-user v) "")
            ?p (or (tramp-file-name-port v) "")
-           ?l command))
+            ?a "-t" ?l command))
 
        ;; Synchronize stderr.
        (when tmpstderr
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 8ace0165ed9..6b64e26b107 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -252,9 +252,9 @@ pair of the form (KEY VALUE).  The following KEYs are 
defined:
     \"%\" followed by a letter are expanded in the arguments as
     follows:
 
-    - \"%h\" is replaced by the host name
-    - \"%u\" is replaced by the user name
-    - \"%p\" is replaced by the port number
+    - \"%h\" is replaced by the host name.
+    - \"%u\" is replaced by the user name.
+    - \"%p\" is replaced by the port number.
     - \"%%\" can be used to obtain a literal percent character.
 
     If a sub-list containing \"%h\", \"%u\" or \"%p\" is
@@ -283,6 +283,8 @@ pair of the form (KEY VALUE).  The following KEYs are 
defined:
     - \"%z\" is replaced by the `tramp-scp-direct-remote-copying'
       argument if it is supported.
     - \"%d\" is replaced by the device detected by `tramp-adb-get-device'.
+    - \"%a\" adds the pseudo-terminal allocation argument \"-t\" in
+       asynchronous processes, if the connection type is not `pipe'.
 
     The existence of `tramp-login-args', combined with the
     absence of `tramp-copy-args', is an indication that the
@@ -5033,6 +5035,7 @@ substitution.  SPEC-LIST is a list of char/value pairs 
used for
                  (when adb-file-name-handler-p
                    (tramp-compat-funcall
                     'tramp-adb-get-device v)))
+                 (pta (unless (eq connection-type 'pipe) "-t"))
                 login-args p)
 
            ;; Replace `login-args' place holders.  Split
@@ -5049,7 +5052,7 @@ substitution.  SPEC-LIST is a list of char/value pairs 
used for
                 v 'tramp-login-args
                 ?h (or host "") ?u (or user "") ?p (or port "")
                 ?c (format-spec (or options "") (format-spec-make ?t tmpfile))
-                ?d (or device "") ?l ""))))
+                ?d (or device "") ?a (or pta "") ?l ""))))
             p (make-process
                :name name :buffer buffer
                :command (append `(,login-program) login-args command)



reply via email to

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