[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/minibuf.c
From: |
Richard M . Stallman |
Subject: |
[Emacs-diffs] Changes to emacs/src/minibuf.c |
Date: |
Sat, 20 Nov 2004 17:37:50 -0500 |
Index: emacs/src/minibuf.c
diff -c emacs/src/minibuf.c:1.274 emacs/src/minibuf.c:1.275
*** emacs/src/minibuf.c:1.274 Sat Nov 20 22:04:11 2004
--- emacs/src/minibuf.c Sat Nov 20 22:32:07 2004
***************
*** 2082,2090 ****
if (XINT (Fminibuffer_prompt_end ()) == ZV)
goto exit;
! if (!NILP (Ftest_completion (Fminibuffer_contents (),
Vminibuffer_completion_table,
Vminibuffer_completion_predicate)))
goto exit;
/* Call do_completion, but ignore errors. */
--- 2082,2110 ----
if (XINT (Fminibuffer_prompt_end ()) == ZV)
goto exit;
! val = Fminibuffer_contents ();
! if (!NILP (Ftest_completion (val,
Vminibuffer_completion_table,
Vminibuffer_completion_predicate)))
+ {
+ if (completion_ignore_case)
+ { /* Fixup case of the field, if necessary. */
+ Lisp_Object compl
+ = Ftry_completion (val,
+ Vminibuffer_completion_table,
+ Vminibuffer_completion_predicate);
+ if (STRINGP (compl)
+ /* If it weren't for this piece of paranoia, I'd replace
+ the whole thing with a call to do_completion. */
+ && EQ (Flength (val), Flength (compl)))
+ {
+ del_range (XINT (Fminibuffer_prompt_end ()), ZV);
+ Finsert (1, &compl);
+ }
+ }
+ goto exit;
+ }
+
goto exit;
/* Call do_completion, but ignore errors. */