From b95ddab3b26629a557101b2066b237579b4d0c55 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Wed, 6 Feb 2002 15:30:40 +0000 Subject: [PATCH] (dired-get-filename): Add /: when appropriate to avoid taking a local name as remote. --- lisp/dired.el | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/lisp/dired.el b/lisp/dired.el index 43d03627a98..7c95bbe51ab 100644 --- a/lisp/dired.el +++ b/lisp/dired.el @@ -1425,14 +1425,25 @@ Optional arg NO-ERROR-IF-NOT-FILEP means return nil if no filename on (not default-file-name-coding-system) (setq file (encode-coding-string file buffer-file-coding-system))) (cond + ((null file) + nil) ((eq localp 'verbatim) file) ((and (eq localp 'no-dir) already-absolute) (file-name-nondirectory file)) - ((or already-absolute (eq localp 'no-dir)) + (already-absolute + (if (find-file-name-handler file nil) + (concat "/:" file) + file)) + ((eq localp 'no-dir) file) + ((equal (dired-current-directory) "/") + (setq file (concat (dired-current-directory localp) file)) + (if (find-file-name-handler file nil) + (concat "/:" file) + file)) (t - (and file (concat (dired-current-directory localp) file)))))) + (concat (dired-current-directory localp) file))))) (defun dired-string-replace-match (regexp string newtext &optional literal global) -- 2.39.2