bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#10489: 24.0.92; dired-do-copy may create infinite directory hierarch


From: Andreas Schwab
Subject: bug#10489: 24.0.92; dired-do-copy may create infinite directory hierarchy
Date: Mon, 16 Jan 2012 15:09:48 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.92 (gnu/linux)

Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:

> Michael Albinus <michael.albinus@gmx.de> writes:
>
>> Thierry Volpiatto <thierry.volpiatto@gmail.com> writes:
>>
>>> IMHO we should fix this bug for most use cases with a compare function
>>> maybe not perfect in many points but ok for most basic usages.
>>> The function shown by Drew and I put in last patch as you said isn't
>>> sufficient and fail in many cases even on local filesystem:
>>>
>>> (defun bmkp-same-file-p (file1 file2)
>>>   "Return non-nil if FILE1 and FILE2 name the same file.
>>> If either name is not absolute, then it is expanded relative to
>>> `default-directory' for the test."
>>>   (and (equal (file-remote-p file1) (file-remote-p file2))
>>>        (string= (file-truename (expand-file-name file1))
>>>                 (file-truename (expand-file-name file2)))))
>>>
>>> (bmkp-same-file-p "~/Test" "/home/thierry/Test/") => nil
>>
>> So it must be 
>>
>>        (string= (directory-file-name (file-truename (expand-file-name 
>> file1)))
>>                 (directory-file-name (file-truename (expand-file-name 
>> file2))))))
>
> So, any objections to apply my patch to trunk with these changes?

You also need to check whether the target is a subdirectory of the
source.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."





reply via email to

[Prev in Thread] Current Thread [Next in Thread]