summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Albinus <michael.albinus@gmx.de>2021-01-29 09:44:31 +0100
committerMichael Albinus <michael.albinus@gmx.de>2021-01-29 09:44:31 +0100
commit4ce5646d592c8d998d066d56108e6dd92372e22b (patch)
tree2c242362016b411103be11720b443339d3301ffe
parentae2e2b6acdf9c052b726c45507945ff0a824db91 (diff)
downloademacs-4ce5646d592c8d998d066d56108e6dd92372e22b.tar.gz
Fix Bug#45518 in compile.el
* lisp/progmodes/compile.el (compilation-get-file-structure): Avoid call of `file-truename' for remote files. (Bug#45518)
-rw-r--r--lisp/progmodes/compile.el7
1 files changed, 6 insertions, 1 deletions
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index 94e4f3c6fa7..2c1e6ff52ec 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -3041,7 +3041,12 @@ TRUE-DIRNAME is the `file-truename' of DIRNAME, if given."
;; Get the specified directory from FILE.
(spec-directory
(if (cdr file)
- (file-truename (concat comint-file-name-prefix (cdr file))))))
+ ;; This function is active in `compilation-filter'.
+ ;; There could be problems to call `file-truename'
+ ;; for remote compilation processes.
+ (if (file-remote-p default-directory)
+ (concat comint-file-name-prefix (cdr file))
+ (file-truename (concat comint-file-name-prefix (cdr file)))))))
;; Check for a comint-file-name-prefix and prepend it if appropriate.
;; (This is very useful for compilation-minor-mode in an rlogin-mode