summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Albinus <michael.albinus@gmx.de>2016-05-26 19:57:13 +0200
committerMichael Albinus <michael.albinus@gmx.de>2016-05-26 19:57:13 +0200
commit21e87ece97e90f5500bd49b84dca08d97bd4f155 (patch)
treef67c6de3371321e0ad80f0e0ef12ef5094de2407
parent16be3e90545972dec16014253a843229d5bdf388 (diff)
downloademacs-21e87ece97e90f5500bd49b84dca08d97bd4f155.tar.gz
emacs-21e87ece97e90f5500bd49b84dca08d97bd4f155.tar.bz2
emacs-21e87ece97e90f5500bd49b84dca08d97bd4f155.zip
Fix Bug#23614.
* lisp/net/tramp-sh.el (tramp-maybe-open-connection): Let-bind `process-coding-system-alist' in order to suppress the value for "cmdproxy". * lisp/net/tramp.el (tramp-encoding-shell): `w32-shell-name' is a function. (tramp-encoding-command-switch) (tramp-encoding-command-interactive): Use `w32-shell-dos-semantics'. * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion): Suppress some tests on MS Windows. (Bug#23614)
-rw-r--r--lisp/net/tramp-sh.el3
-rw-r--r--lisp/net/tramp.el9
-rw-r--r--test/lisp/net/tramp-tests.el6
3 files changed, 11 insertions, 7 deletions
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index 3fb15888ca8..14c6f949853 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -4790,6 +4790,9 @@ connection if a previous connection has died for some reason."
(options (tramp-ssh-controlmaster-options vec))
(process-connection-type tramp-process-connection-type)
(process-adaptive-read-buffering nil)
+ ;; There are unfortune settings for "cmdproxy" on
+ ;; W32 systems.
+ (process-coding-system-alist nil)
(coding-system-for-read nil)
;; This must be done in order to avoid our file
;; name handler.
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index d6911def5f2..28fc9c748bb 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -120,9 +120,7 @@ This setting has precedence over `auto-save-file-name-transforms'."
(directory :tag "Auto save directory name")))
(defcustom tramp-encoding-shell
- (if (boundp 'w32-shell-name)
- (symbol-value 'w32-shell-name)
- "/bin/sh")
+ (or (tramp-compat-funcall 'w32-shell-name) "/bin/sh")
"Use this program for encoding and decoding commands on the local host.
This shell is used to execute the encoding and decoding command on the
local host, so if you want to use `~' in those commands, you should
@@ -145,14 +143,15 @@ use for the remote host."
:group 'tramp
:type '(file :must-match t))
-(defcustom tramp-encoding-command-switch (if (boundp 'w32-shell-name) "/c" "-c")
+(defcustom tramp-encoding-command-switch
+ (if (tramp-compat-funcall 'w32-shell-dos-semantics) "/c" "-c")
"Use this switch together with `tramp-encoding-shell' for local commands.
See the variable `tramp-encoding-shell' for more information."
:group 'tramp
:type 'string)
(defcustom tramp-encoding-command-interactive
- (unless (boundp 'w32-shell-name) "-i")
+ (unless (tramp-compat-funcall 'w32-shell-dos-semantics) "-i")
"Use this switch together with `tramp-encoding-shell' for interactive shells.
See the variable `tramp-encoding-shell' for more information."
:version "24.1"
diff --git a/test/lisp/net/tramp-tests.el b/test/lisp/net/tramp-tests.el
index 6553421c5bc..468ed4a36ff 100644
--- a/test/lisp/net/tramp-tests.el
+++ b/test/lisp/net/tramp-tests.el
@@ -1380,8 +1380,10 @@ This tests also `make-symbolic-link', `file-truename' and `add-name-to-file'."
(unwind-protect
(progn
- ;; Method and host name in completion mode.
- (when (tramp-completion-mode-p)
+ ;; Method and host name in completion mode. This kind of
+ ;; completion does not work on MS Windows.
+ (when (and (tramp-completion-mode-p)
+ (not (memq system-type '(cygwin windows-nt))))
(unless (zerop (length method))
(should
(member