Commit 453ffe5d authored by Michael Albinus's avatar Michael Albinus

Fix minor Tramp oddities

* lisp/net/tramp-archive.el (tramp-archive-file-name-handler):
Increase `max-specpdl-size' temporarily.

* lisp/net/tramp-rclone.el (tramp-rclone-flush-directory-cache):
Fix a problem with older Emacsen.
parent f0b0105d
Pipeline #5624 passed with stage
in 56 minutes and 52 seconds
......@@ -318,7 +318,10 @@ arguments to pass to the OPERATION."
(let* ((filename (apply #'tramp-archive-file-name-for-operation
operation args))
(archive (tramp-archive-file-name-archive filename)))
(archive (tramp-archive-file-name-archive filename))
;; Sometimes, it fails with "Variable binding depth exceeds
;; max-specpdl-size".
(max-specpdl-size (* 2 max-specpdl-size)))
;; `filename' could be a quoted file name. Or the file
;; archive could be a directory, see Bug#30293.
......@@ -477,7 +477,18 @@ file names."
(tramp-get-connection-process vec) "rclone-pid"
(catch 'pid
(dolist (pid (list-system-processes)) ;; "pidof rclone" ?
;; Until Emacs 25, `process-attributes' could
;; crash Emacs for some processes. So we use
;; "pidof", which might not work everywhere.
(if (<= emacs-major-version 25)
(let ((default-directory temporary-file-directory))
(shell-command-to-string "pidof rclone"))))
(and (string-match-p
(format "rclone mount %s:" (tramp-file-name-host vec)))
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment