# HG changeset patch # User Stefan Monnier # Date 1022023271 0 # Node ID d9e7dc0ccc849ca4a560ccee379aaf96b6ed6cd2 # Parent 7d835214e61ecee990cd6aa3b02d63faeb48216f (ange-ftp-allow-child-lookup): Re-enable since the last patch works around the wu-ftpd misfeature that prompted the disabling of this optimization. diff -r 7d835214e61e -r d9e7dc0ccc84 lisp/net/ange-ftp.el --- a/lisp/net/ange-ftp.el Tue May 21 22:22:10 2002 +0000 +++ b/lisp/net/ange-ftp.el Tue May 21 23:21:11 2002 +0000 @@ -2941,34 +2941,27 @@ ;; 2. The syntax of FILE and DIR make it impossible that FILE could be a valid ;; subdirectory. This is of course an OS dependent judgement. -;;; Nowadays, the judgement for #2 is always "no". -;;; With today's ftp servers on Unix and GNU systems, -;;; it appears to be impossible to tell from the result -;;; of the directory listing whether the argument is a directory. -;;; This appears to be true even in Emacs 20.7 - (defmacro ange-ftp-allow-child-lookup (dir file) - nil) -;;; `(not -;;; (let* ((efile ,file) ; expand once. -;;; (edir ,dir) -;;; (parsed (ange-ftp-ftp-name edir)) -;;; (host-type (ange-ftp-host-type -;;; (car parsed)))) -;;; (or -;;; ;; Deal with dired -;;; (and (boundp 'dired-local-variables-file) ; in the dired-x package -;;; (stringp dired-local-variables-file) -;;; (string-equal dired-local-variables-file efile)) -;;; ;; No dots in dir names in vms. -;;; (and (eq host-type 'vms) -;;; (string-match "\\." efile)) -;;; ;; No subdirs in mts of cms. -;;; (and (memq host-type '(mts cms)) -;;; (not (string-equal "/" (nth 2 parsed)))) -;;; ;; No dots in pseudo-dir names in bs2000. -;;; (and (eq host-type 'bs2000) -;;; (string-match "\\." efile))))))) + `(not + (let* ((efile ,file) ; expand once. + (edir ,dir) + (parsed (ange-ftp-ftp-name edir)) + (host-type (ange-ftp-host-type + (car parsed)))) + (or + ;; Deal with dired + (and (boundp 'dired-local-variables-file) ; in the dired-x package + (stringp dired-local-variables-file) + (string-equal dired-local-variables-file efile)) + ;; No dots in dir names in vms. + (and (eq host-type 'vms) + (string-match "\\." efile)) + ;; No subdirs in mts of cms. + (and (memq host-type '(mts cms)) + (not (string-equal "/" (nth 2 parsed)))) + ;; No dots in pseudo-dir names in bs2000. + (and (eq host-type 'bs2000) + (string-match "\\." efile)))))) (defun ange-ftp-file-entry-p (name) "Given NAME, return whether there is a file entry for it."