From: Richard M. Stallman Date: Sat, 2 Sep 1995 01:19:53 +0000 (+0000) Subject: (Ffile_name_all_completions, Ffile_name_completion): X-Git-Tag: emacs-19.34~2876 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=8436e23177b5fe7f705ed88e6e334af64585cab1;p=emacs.git (Ffile_name_all_completions, Ffile_name_completion): Look for handler for FILE as well as for DIRNAME. --- diff --git a/src/dired.c b/src/dired.c index 834729a0319..de93a67adc4 100644 --- a/src/dired.c +++ b/src/dired.c @@ -236,12 +236,18 @@ Returns nil if DIR contains no name starting with FILE.") { Lisp_Object handler; - /* If the file name has special constructs in it, + /* If the directory name has special constructs in it, call the corresponding file handler. */ handler = Ffind_file_name_handler (dirname, Qfile_name_completion); if (!NILP (handler)) return call3 (handler, Qfile_name_completion, file, dirname); + /* If the file name has special constructs in it, + call the corresponding file handler. */ + handler = Ffind_file_name_handler (file, Qfile_name_completion); + if (!NILP (handler)) + return call3 (handler, Qfile_name_completion, file, dirname); + return file_name_completion (file, dirname, 0, 0); } @@ -254,12 +260,18 @@ These are all file names in directory DIR which begin with FILE.") { Lisp_Object handler; - /* If the file name has special constructs in it, + /* If the directory name has special constructs in it, call the corresponding file handler. */ handler = Ffind_file_name_handler (dirname, Qfile_name_all_completions); if (!NILP (handler)) return call3 (handler, Qfile_name_all_completions, file, dirname); + /* If the file name has special constructs in it, + call the corresponding file handler. */ + handler = Ffind_file_name_handler (file, Qfile_name_all_completions); + if (!NILP (handler)) + return call3 (handler, Qfile_name_all_completions, file, dirname); + return file_name_completion (file, dirname, 1, 0); }