summaryrefslogtreecommitdiff
path: root/lisp/complete.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/complete.el')
-rw-r--r--lisp/complete.el33
1 files changed, 17 insertions, 16 deletions
diff --git a/lisp/complete.el b/lisp/complete.el
index baa8a5a5f10..4f223365202 100644
--- a/lisp/complete.el
+++ b/lisp/complete.el
@@ -383,7 +383,7 @@ of `minibuffer-completion-table' and the minibuffer contents.")
(delete-region beg end)
(insert str)
(setq end (+ beg (length str)))))
-
+
;; Prepare various delimiter strings
(or (equal PC-word-delimiters PC-delims)
(setq PC-delims PC-word-delimiters
@@ -392,17 +392,18 @@ of `minibuffer-completion-table' and the minibuffer contents.")
PC-delims-list (append PC-delims nil)))
;; Add wildcards if necessary
- (let ((dir (file-name-directory str))
- (file (file-name-nondirectory str)))
- (while (and (stringp dir) (not (file-directory-p dir)))
- (setq dir (directory-file-name dir))
- (setq file (concat (replace-regexp-in-string
- PC-delim-regex "*\\&"
- (file-name-nondirectory dir))
- "*/" file))
- (setq dir (file-name-directory dir)))
- (setq str (concat dir file)))
-
+ (and filename
+ (let ((dir (file-name-directory str))
+ (file (file-name-nondirectory str)))
+ (while (and (stringp dir) (not (file-directory-p dir)))
+ (setq dir (directory-file-name dir))
+ (setq file (concat (replace-regexp-in-string
+ PC-delim-regex "*\\&"
+ (file-name-nondirectory dir))
+ "*/" file))
+ (setq dir (file-name-directory dir)))
+ (setq str (concat dir file))))
+
;; Look for wildcard expansions in directory name
(and filename
(string-match "\\*.*/" str)
@@ -890,7 +891,7 @@ or properties are considered."
;;; This is adapted from lib-complete.el, by Mike Williams.
(defun PC-include-file-all-completions (file search-path &optional full)
"Return all completions for FILE in any directory on SEARCH-PATH.
-If optional third argument FULL is non-nil, returned pathnames should be
+If optional third argument FULL is non-nil, returned pathnames should be
absolute rather than relative to some directory on the SEARCH-PATH."
(setq search-path
(mapcar (lambda (dir)
@@ -900,7 +901,7 @@ absolute rather than relative to some directory on the SEARCH-PATH."
;; It's an absolute file name, so don't need search-path
(progn
(setq file (expand-file-name file))
- (file-name-all-completions
+ (file-name-all-completions
(file-name-nondirectory file) (file-name-directory file)))
(let ((subdir (file-name-directory file))
(ndfile (file-name-nondirectory file))
@@ -918,9 +919,9 @@ absolute rather than relative to some directory on the SEARCH-PATH."
(if (file-directory-p dir)
(progn
(setq file-lists
- (cons
+ (cons
(mapcar (lambda (file) (concat subdir file))
- (file-name-all-completions ndfile
+ (file-name-all-completions ndfile
(car search-path)))
file-lists))))
(setq search-path (cdr search-path))))