From 6130b96ae7ed9632e7623fb86eac695edc401098 Mon Sep 17 00:00:00 2001 From: Jambunathan K Date: Fri, 8 Feb 2013 09:53:55 +0200 Subject: [PATCH] * lisp/icomplete.el (icomplete-forward-completions) (icomplete-backward-completions): Handle corner case. Fixes: debbugs:13602 --- lisp/ChangeLog | 5 +++++ lisp/icomplete.el | 7 ++++--- 2 files changed, 9 insertions(+), 3 deletions(-) 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)))) -- 2.39.5