diff --git a/lisp/net/tramp-gvfs.el b/lisp/net/tramp-gvfs.el index 36166ad1966..dce6edd19c4 100644 --- a/lisp/net/tramp-gvfs.el +++ b/lisp/net/tramp-gvfs.el @@ -951,6 +951,10 @@ is no information where to trace the message.") (tramp-error tramp-gvfs-dbus-event-vector 'file-error "%s" (cadr err)))) (add-hook 'dbus-event-error-functions #'tramp-gvfs-dbus-event-error) +(add-hook 'tramp-gvfs-unload-hook + (lambda () + (remove-hook 'dbus-event-error-functions + #'tramp-gvfs-dbus-event-error))) ;; File name primitives. diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 7bb9e422a50..9314c437d29 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -2450,7 +2450,9 @@ Falls back to normal file name handler if no Tramp file name handler exists." "Load Tramp file name handler, and perform OPERATION." (tramp-unload-file-name-handlers) (when tramp-mode - (let ((default-directory (tramp-compat-temporary-file-directory))) + ;; We cannot use `tramp-compat-temporary-file-directory' here due + ;; to autoload. + (let ((default-directory temporary-file-directory)) (load "tramp" 'noerror 'nomessage))) (apply operation args)))