]> git.eshelyaron.com Git - emacs.git/commitdiff
(comint-dynamic-complete-as-filename): Save end of match before calling other
authorKarl Heuer <kwzh@gnu.org>
Mon, 11 Apr 1994 20:30:44 +0000 (20:30 +0000)
committerKarl Heuer <kwzh@gnu.org>
Mon, 11 Apr 1994 20:30:44 +0000 (20:30 +0000)
functions.  Handle non-match too.

lisp/comint.el

index 8be11e72219a91423d4587ecb0eb00076950a0dc..7e57e88579b8452d2eaecbc92e35502e2e20a7f9 100644 (file)
@@ -1836,11 +1836,14 @@ See `comint-dynamic-complete-filename'.  Returns t if successful."
   (let* ((completion-ignore-case nil)
         (completion-ignored-extensions comint-completion-fignore)
         (success t)
-        (filename (or (comint-match-partial-filename) ""))
-         (pathdir (file-name-directory filename))
-         (pathnondir (file-name-nondirectory filename))
-         (directory (if pathdir (comint-directory pathdir) default-directory))
-        (completion (file-name-completion pathnondir directory)))
+        (filename (comint-match-partial-filename))
+        endpos pathdir pathnondir directory completion)
+    (setq endpos (if filename (match-end 0) (point)))
+    (or filename (setq filename ""))
+    (setq pathdir (file-name-directory filename)
+         pathnondir (file-name-nondirectory filename)
+         directory (if pathdir (comint-directory pathdir) default-directory)
+         completion (file-name-completion pathnondir directory))
     (cond ((null completion)
            (message "No completions of %s" filename)
           (setq success nil))
@@ -1851,7 +1854,7 @@ See `comint-dynamic-complete-filename'.  Returns t if successful."
            (comint-dynamic-list-filename-completions))
           (t                            ; Completion string returned.
            (let ((file (concat (file-name-as-directory directory) completion)))
-             (goto-char (match-end 0))
+             (goto-char endpos)
              (insert (substring (directory-file-name completion)
                                 (length pathnondir)))
              (cond ((symbolp (file-name-completion completion directory))