host (tramp-file-name-host v)
port (tramp-file-name-port v)))))
(when (member method tramp-gvfs-methods)
- (with-parsed-tramp-file-name
- ;; This must be changed when we throw the old signature
- ;; away in Emacs 27.1 and higher.
- (with-no-warnings
- (tramp-make-tramp-file-name method user domain host port ""))
- nil
+ (let ((v (make-tramp-file-name
+ :method method :user user :domain domain
+ :host host :port port)))
(tramp-message
v 6 "%s %s"
signal-name (tramp-gvfs-stringify-dbus-message mount-info))
;;;; entry point
;; We use the Tramp internal function `tramp-make-tramp-file-name'.
+;; It has changed its signature in Emacs 27.1, supporting still the
+;; old calling convention. Let's assume rcompile.el has been removed
+;; once Tramp does not support it any longer.
;; Better would be, if there are functions to provide user, host and
;; localname of a remote filename, independent of Tramp's implementation.
;; The function calls are wrapped by `funcall' in order to pacify the byte
(with-current-buffer compilation-last-buffer
(when (fboundp 'tramp-make-tramp-file-name)
(set (make-local-variable 'comint-file-name-prefix)
- (tramp-make-tramp-file-name
+ (funcall
+ #'tramp-make-tramp-file-name
nil ;; method.
remote-compile-user
remote-compile-host
(when (url-password obj)
(password-cache-add
(tramp-make-tramp-file-name
- (url-type obj) (url-user obj) nil
- (url-host obj) port "")
+ (make-tramp-file-name
+ :method (url-type obj) :user (url-user obj)
+ :host (url-host obj)))
(url-password obj)))
(tramp-make-tramp-file-name
- (url-type obj) (url-user obj) nil
- (url-host obj) port (url-filename obj)))))
+ (make-tramp-file-name
+ :method (url-type obj) :user (url-user obj)
+ :host (url-host obj) :port port :localname (url-filename obj))))))
(defun url-tramp-convert-tramp-to-url (file)
"Convert FILE, a Tramp file name, to a URL.