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)
(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"
'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
(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
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"
(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)