GNU bug report logs -
#10489
24.0.92; dired-do-copy may create infinite directory hierarchy
Previous Next
Reported by: michael_heerdegen <at> web.de
Date: Thu, 12 Jan 2012 19:36:01 UTC
Severity: important
Tags: patch
Merged with 11130
Found in version 24.0.92
Done: Chong Yidong <cyd <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
> From: Thierry Volpiatto <thierry.volpiatto <at> gmail.com>
> Cc: Eli Zaretskii <eliz <at> gnu.org>, 10489 <at> debbugs.gnu.org
> Date: Fri, 24 Feb 2012 17:02:16 +0100
>
> (defun files-equal-p (file1 file2)
> "Return non-nil if FILE1 and FILE2 name the same file."
> (let ((handler (or (find-file-name-handler file1 'files-equal-p)
> (find-file-name-handler file2 'files-equal-p))))
> (if handler
> (funcall handler 'files-equal-p file1 file2)
If FILE1 and FILE2 have different 'files-equal-p handlers, which one
of them, if any, should be invoked here?
IOW, shouldn't we invoke a file handler only if it can handle _both_
files? Also, if each file has a different handler, doesn't that in
itself already mean the files are not equal?
> (defun file-subdir-of-p (dir1 dir2)
> "Return non-nil if DIR1 is a subdirectory of DIR2.
> Note that a directory is treated by this function as a subdirectory of itself.
> This function only works when its two arguments already exist,
> when they don't, it returns nil."
> (let ((handler (or (find-file-name-handler dir1 'file-subdir-of-p)
> (find-file-name-handler dir2 'file-subdir-of-p))))
> (if handler
> (funcalll handler 'file-subdir-of-p dir1 dir2)
Same issue here. Except that, unlike in the files-equal-p case, it's
not so clear what to do if each file has a different handler, or if
one has a handler, but the other doesn't.
This bug report was last modified 13 years and 58 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.