Mercurial > emacs
changeset 109443:9e514d1076b4
* net/tramp.el (tramp-handle-shell-command): Don't use hard-wired
"/bin/sh" but `tramp-remote-sh' from `tramp-methods'.
(tramp-find-shell): Simplify setting connection property.
(tramp-get-ls-command): Make test for "--color=never" stronger.
author | Michael Albinus <michael.albinus@gmx.de> |
---|---|
date | Fri, 16 Jul 2010 14:09:55 +0200 |
parents | 6c14b478b70f |
children | 11d5817a8846 051595eb9b58 f2072d485e00 |
files | lisp/ChangeLog lisp/net/tramp.el |
diffstat | 2 files changed, 21 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Fri Jul 16 09:50:37 2010 +0200 +++ b/lisp/ChangeLog Fri Jul 16 14:09:55 2010 +0200 @@ -1,3 +1,10 @@ +2010-07-16 Michael Albinus <michael.albinus@gmx.de> + + * net/tramp.el (tramp-handle-shell-command): Don't use hard-wired + "/bin/sh" but `tramp-remote-sh' from `tramp-methods'. + (tramp-find-shell): Simplify setting connection property. + (tramp-get-ls-command): Make test for "--color=never" stronger. + 2010-07-15 Simon South <ssouth@member.fsf.org> * progmodes/delphi.el (delphi-previous-indent-of): Indent case
--- a/lisp/net/tramp.el Fri Jul 16 09:50:37 2010 +0200 +++ b/lisp/net/tramp.el Fri Jul 16 14:09:55 2010 +0200 @@ -4683,7 +4683,12 @@ (let* ((asynchronous (string-match "[ \t]*&[ \t]*\\'" command)) ;; We cannot use `shell-file-name' and `shell-command-switch', ;; they are variables of the local host. - (args (list "/bin/sh" "-c" (substring command 0 asynchronous))) + (args (list + (tramp-get-method-parameter + (tramp-file-name-method + (tramp-dissect-file-name default-directory)) + 'tramp-remote-sh) + "-c" (substring command 0 asynchronous))) current-buffer-p (output-buffer (cond @@ -6619,12 +6624,10 @@ (t (tramp-message vec 5 "Remote `%s' groks tilde expansion, good" - (tramp-get-method-parameter - (tramp-file-name-method vec) 'tramp-remote-sh)) - (tramp-set-connection-property - vec "remote-shell" - (tramp-get-method-parameter - (tramp-file-name-method vec) 'tramp-remote-sh)))))))) + (tramp-set-connection-property + vec "remote-shell" + (tramp-get-method-parameter + (tramp-file-name-method vec) 'tramp-remote-sh))))))))) ;; ------------------------------------------------------------ ;; -- Functions for establishing connection -- @@ -8316,10 +8319,13 @@ ;; Check parameters. On busybox, "ls" output coloring is ;; enabled by default sometimes. So we try to disable it ;; when possible. $LS_COLORING is not supported there. + ;; Some "ls" versions are sensible wrt the order of + ;; arguments, they fail when "-al" is after the + ;; "--color=never" argument (for example on FreeBSD). (when (zerop (tramp-send-command-and-check vec (format "%s -lnd /" result))) (when (zerop (tramp-send-command-and-check - vec (format "%s --color=never /" result))) + vec (format "%s --color=never -al /" result))) (setq result (concat result " --color=never"))) (throw 'ls-found result)) (setq dl (cdr dl))))))