summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorJuanma Barranquero <lekktu@gmail.com>2008-03-20 10:28:55 +0000
committerJuanma Barranquero <lekktu@gmail.com>2008-03-20 10:28:55 +0000
commit7d94fb17ea95a5d62135d0be38ec70d5a922f586 (patch)
tree6ba8c6576557c526400cd50d55391bf785403483 /lisp
parent077aec278846386a3c67f8110aa4d0c0754751e8 (diff)
downloademacs-7d94fb17ea95a5d62135d0be38ec70d5a922f586.tar.gz
(icomplete-completions): While collecting the list of prospective candidates,
don't overshoot `icomplete-prospects-length'.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog2
-rw-r--r--lisp/icomplete.el12
2 files changed, 9 insertions, 5 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index a812405fd1a..75dbbd5a068 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -6,6 +6,8 @@
(icomplete-compute-delay): Fix docstring and remove spurious *.
(icomplete-delay-completions-threshold): Fix typo in docstring and
remove spurious *.
+ (icomplete-completions): While collecting the list of prospective
+ candidates, don't overshoot `icomplete-prospects-length'.
2008-03-20 Dan Nicolaescu <dann@ics.uci.edu>
diff --git a/lisp/icomplete.el b/lisp/icomplete.el
index 780fca20709..ce35a6c960d 100644
--- a/lisp/icomplete.el
+++ b/lisp/icomplete.el
@@ -299,17 +299,19 @@ are exhibited within the square braces.)"
(substring most (length name))
close-bracket-determined)))
;;"-prospects" - more than one candidate
- (prospects-len 0)
- prospects most-is-exact comp)
+ (prospects-len (+ (length determ) 6)) ;; take {,...} into account
+ prospects most-is-exact comp limit)
(if (eq most-try t)
(setq prospects nil)
- (while (and comps (< prospects-len icomplete-prospects-length))
+ (while (and comps (not limit))
(setq comp (substring (car comps) most-len)
comps (cdr comps))
(cond ((string-equal comp "") (setq most-is-exact t))
((member comp prospects))
- (t (setq prospects (cons comp prospects)
- prospects-len (+ (length comp) 1 prospects-len))))))
+ (t (setq prospects-len (+ (length comp) 1 prospects-len))
+ (if (< prospects-len icomplete-prospects-length)
+ (setq prospects (cons comp prospects))
+ (setq limit t))))))
(if prospects
(concat determ
"{"