1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-23 07:19:15 +00:00

Fix Bug#27315

* lisp/net/tramp-cache.el (tramp-cache-read-persistent-data):
New defvar.
(top): Use it.

* lisp/net/tramp.el (tramp-handle-file-name-case-insensitive-p):
Check for connected, not for connectable.  (Bug#27315)
(tramp-process-actions):
* lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
Use `tramp-cache-read-persistent-data'.

* test/lisp/net/tramp-tests.el (top): Set also
`tramp-cache-read-persistent-data'.
This commit is contained in:
Michael Albinus 2017-06-14 14:17:22 +02:00
parent 5647c4a2c6
commit 164fcc6f26
4 changed files with 16 additions and 14 deletions

View File

@ -429,14 +429,16 @@ for all methods. Resulting data are derived from connection history."
tramp-cache-data)
res))
;; When "emacs -Q" has been called, both variables are nil. We do not
;; load the persistency file then, in order to have a clean test environment.
;;;###tramp-autoload
(defvar tramp-cache-read-persistent-data (or init-file-user site-run-file)
"Whether to read persistent data at startup time.")
;; Read persistent connection history.
(when (and (stringp tramp-persistency-file-name)
(zerop (hash-table-count tramp-cache-data))
;; When "emacs -Q" has been called, both variables are nil.
;; We do not load the persistency file then, in order to
;; have a clean test environment.
(or init-file-user
site-run-file))
tramp-cache-read-persistent-data)
(condition-case err
(with-temp-buffer
(insert-file-contents tramp-persistency-file-name)

View File

@ -1669,10 +1669,10 @@ connection if a previous connection has died for some reason."
(format "Opening connection for %s@%s using %s" user host method))
;; Enable `auth-source'.
(tramp-set-connection-property vec "first-password-request" t)
(tramp-set-connection-property
vec "first-password-request" tramp-cache-read-persistent-data)
;; There will be a callback of "askPassword" when a password is
;; needed.
;; There will be a callback of "askPassword" when a password is needed.
(dbus-register-method
:session dbus-service-emacs object-path
tramp-gvfs-interface-mountoperation "askPassword"
@ -1693,7 +1693,7 @@ connection if a previous connection has died for some reason."
'tramp-gvfs-handler-askquestion)
;; The call must be asynchronously, because of the "askPassword"
;; or "askQuestion"callbacks.
;; or "askQuestion" callbacks.
(if (string-match "(so)$" tramp-gvfs-mountlocation-signature)
(with-tramp-dbus-call-method vec nil
:session tramp-gvfs-service-daemon tramp-gvfs-path-mounttracker

View File

@ -2876,11 +2876,10 @@ User is always nil."
(tramp-get-method-parameter v 'tramp-case-insensitive)
;; There isn't. So we must check, in case there's a connection already.
(and (tramp-connectable-p filename)
(and (file-remote-p filename nil 'connected)
(with-tramp-connection-property v "case-insensitive"
(ignore-errors
(with-tramp-progress-reporter v 5 "Checking case-insensitive"
(tramp-backtrace v)
;; The idea is to compare a file with lower case
;; letters with the same file with upper case letters.
(let ((candidate
@ -3551,14 +3550,14 @@ The terminal type can be configured with `tramp-terminal-type'."
PROC and VEC indicate the remote connection to be used. POS, if
set, is the starting point of the region to be deleted in the
connection buffer."
;; Enable `auth-source'. We must use `tramp-current-*' variables in
;; case we have several hops.
;; Enable `auth-source', unless "emacs -Q" has been called. We must
;; use `tramp-current-*' variables in case we have several hops.
(tramp-set-connection-property
(make-tramp-file-name
:method tramp-current-method :user tramp-current-user
:domain tramp-current-domain :host tramp-current-host
:port tramp-current-port)
"first-password-request" t)
"first-password-request" tramp-cache-read-persistent-data)
(save-restriction
(with-tramp-progress-reporter
proc 3 "Waiting for prompts from remote shell"

View File

@ -75,6 +75,7 @@
(setq password-cache-expiry nil
tramp-verbose 0
tramp-cache-read-persistent-data t ;; For auth-sources.
tramp-copy-size-limit nil
tramp-message-show-message nil
tramp-persistency-file-name nil)