diff options
author | Michael Albinus <michael.albinus@gmx.de> | 2017-01-07 18:51:30 +0100 |
---|---|---|
committer | Michael Albinus <michael.albinus@gmx.de> | 2017-01-07 18:51:30 +0100 |
commit | 77f35363fd9bb743716a196a3168fa94d896c28e (patch) | |
tree | 75f50a240bec0c6049d560d5c64f8805469a5bb3 | |
parent | 75cdf429179c6459c10f15578fb32236a8821e4b (diff) | |
download | emacs-77f35363fd9bb743716a196a3168fa94d896c28e.tar.gz |
Fix a problem with `start-file-process' in Tramp
* lisp/net/tramp-sh.el (tramp-maybe-open-connection):
`start-file-process' shall work when `non-essential' is
non-nil, but there is already an established connection.
<https://github.com/company-mode/company-mode/issues/462>
-rw-r--r-- | lisp/net/tramp-sh.el | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el index fec9f10d704..71a388767d0 100644 --- a/lisp/net/tramp-sh.el +++ b/lisp/net/tramp-sh.el @@ -4655,7 +4655,11 @@ connection if a previous connection has died for some reason." ;; If `non-essential' is non-nil, don't reopen a new connection. ;; This variable has been introduced with Emacs 24.1. - (when (and (boundp 'non-essential) (symbol-value 'non-essential)) + ;; We check this for the process related to + ;; `tramp-buffer-name'; otherwise `start-file-process' + ;; wouldn't run ever when `non-essential' is non-nil. + (when (and (boundp 'non-essential) (symbol-value 'non-essential) + (null (get-process (tramp-buffer-name vec)))) (throw 'non-essential 'non-essential)) (with-tramp-progress-reporter |