emacs-diffs
[Top][All Lists]
Advanced

[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.  */




reply via email to

[Prev in Thread] Current Thread [Next in Thread]