|
From: | Michael Albinus |
Subject: | bug#10489: 24.0.92; dired-do-copy may create infinite directory hierarchy |
Date: | Fri, 13 Jan 2012 20:04:35 +0100 |
User-agent: | Gnus/5.13 (Gnus v5.13) Emacs/24.0.92 (gnu/linux) |
Thierry Volpiatto <thierry.volpiatto@gmail.com> writes: > What about this? > > (defun file-name-equal-p (name1 name2 &optional dir) > (let* ((n1 (file-truename (expand-file-name name1 dir))) > (n2 (file-truename (expand-file-name name2 dir))) > (rhost1 (file-remote-p n1 'host)) > (rhost2 (file-remote-p n2 'host)) > (lname1 (file-remote-p n1 'localname)) > (lname2 (file-remote-p n2 'localname)) > (rem-n1 (if rhost1 > (list (cons rhost1 lname1)) > (list (cons (system-name) n1)))) > (rem-n2 (if rhost2 > (list (cons rhost2 lname2)) > (list (cons (system-name) n2))))) > (loop for (x1 . y1) in rem-n1 > for (x2 . y2) in rem-n2 > thereis (and (equal x1 x2) > (equal y1 y2))))) Nope. User name and method also matter. "/ftp:host:/file" <> "/ssh:@host:/file" "/ftp:user1@host:/file" <> "/ftp:user1@host:/file" You shouldn't mess with remote files, really :-) That's what file name handlers are good for. Best regards, Michael.
[Prev in Thread] | Current Thread | [Next in Thread] |