From: Jambunathan K Date: Fri, 8 Feb 2013 07:53:55 +0000 (+0200) Subject: * lisp/icomplete.el (icomplete-forward-completions) X-Git-Tag: emacs-24.3.90~173^2~7^2~131 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=6130b96ae7ed9632e7623fb86eac695edc401098;p=emacs.git * lisp/icomplete.el (icomplete-forward-completions) (icomplete-backward-completions): Handle corner case. Fixes: debbugs:13602 --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 4211901d64f..f2a8deeef40 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2013-02-08 Jambunathan K + + * icomplete.el (icomplete-forward-completions) + (icomplete-backward-completions): Handle corner case (bug#13602). + 2013-02-07 Michael Albinus * vc/vc-hooks.el (vc-find-file-hook): `buffer-file-truename' can diff --git a/lisp/icomplete.el b/lisp/icomplete.el index 9407de4f6d9..8e4dd69e199 100644 --- a/lisp/icomplete.el +++ b/lisp/icomplete.el @@ -167,8 +167,9 @@ Second entry becomes the first and can be selected with (interactive) (let* ((comps (completion-all-sorted-completions)) (last (last comps))) - (setcdr last (cons (car comps) (cdr last))) - (completion--cache-all-sorted-completions (cdr comps)))) + (when comps + (setcdr last (cons (car comps) (cdr last))) + (completion--cache-all-sorted-completions (cdr comps))))) (defun icomplete-backward-completions () "Step backward completions by one entry. @@ -178,7 +179,7 @@ Last entry becomes the first and can be selected with (let* ((comps (completion-all-sorted-completions)) (last-but-one (last comps 2)) (last (cdr last-but-one))) - (when last + (when (consp last) ; At least two elements in comps (setcdr last-but-one (cdr last)) (push (car last) comps) (completion--cache-all-sorted-completions comps))))