From 93f4fe7a7751cdd132ac0ab86d15a5d2dfab44fc Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 20 Oct 2003 20:54:16 +0000 Subject: [PATCH] (PC-do-completion): Do not forget to use `pred' as the default-directory when completing file names. --- lisp/complete.el | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lisp/complete.el b/lisp/complete.el index 567e0fee105..130d0ecb31f 100644 --- a/lisp/complete.el +++ b/lisp/complete.el @@ -1,6 +1,6 @@ ;;; complete.el --- partial completion mechanism plus other goodies -;; Copyright (C) 1990, 1991, 1992, 1993, 1999, 2000 +;; Copyright (C) 1990, 1991, 1992, 1993, 1999, 2000, 2003 ;; Free Software Foundation, Inc. ;; Author: Dave Gillespie @@ -394,7 +394,9 @@ of `minibuffer-completion-table' and the minibuffer contents.") ;; Add wildcards if necessary (and filename (let ((dir (file-name-directory str)) - (file (file-name-nondirectory str))) + (file (file-name-nondirectory str)) + ;; The base dir for file-completion is passed in `predicate'. + (default-directory (expand-file-name pred))) (while (and (stringp dir) (not (file-directory-p dir))) (setq dir (directory-file-name dir)) (setq file (concat (replace-regexp-in-string @@ -408,6 +410,8 @@ of `minibuffer-completion-table' and the minibuffer contents.") (and filename (string-match "\\*.*/" str) (let ((pat str) + ;; The base dir for file-completion is passed in `predicate'. + (default-directory (expand-file-name pred)) files) (setq p (1+ (string-match "/[^/]*\\'" pat))) (while (setq p (string-match PC-delim-regex pat p)) -- 2.39.2