diff options
| -rw-r--r-- | lisp/net/tramp-archive.el | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/lisp/net/tramp-archive.el b/lisp/net/tramp-archive.el index a37009402cf..d2ee7299bee 100644 --- a/lisp/net/tramp-archive.el +++ b/lisp/net/tramp-archive.el @@ -347,10 +347,15 @@ arguments to pass to the OPERATION." ;;;###autoload (progn (defun tramp-archive-autoload-file-name-handler (operation &rest args) "Load Tramp archive file name handler, and perform OPERATION." - (if tramp-archive-enabled - (let ((tramp-archive-autoload t)) - tramp-archive-autoload ; Silence byte compiler. - (apply #'tramp-autoload-file-name-handler operation args))))) + (when tramp-archive-enabled + ;; We cannot use `tramp-compat-temporary-file-directory' here due + ;; to autoload. When installing Tramp's GNU ELPA package, there + ;; might be an older, incompatible version active. We try to + ;; overload this. + (let ((default-directory temporary-file-directory) + (tramp-archive-autoload t)) + tramp-archive-autoload ; Silence byte compiler. + (apply #'tramp-autoload-file-name-handler operation args))))) ;;;###autoload (progn (defun tramp-register-archive-file-name-handler () |
