From 28cd02143a9f257b4e5509aaf430b6448347bd94 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Wed, 22 Feb 1995 01:31:14 +0000 Subject: (imenu--cleanup): Set alist to its default just once, at the beginning. Don't recurse on a cdr which is nil. --- lisp/imenu.el | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'lisp/imenu.el') diff --git a/lisp/imenu.el b/lisp/imenu.el index aa4dd433dbe..f35116d840c 100644 --- a/lisp/imenu.el +++ b/lisp/imenu.el @@ -488,16 +488,18 @@ or 'imenu-create-index-function") ;; Sets the markers in imenu--index-alist ;; point nowhere. ;; if alist is provided use that list. - (and imenu--index-alist + (or alist + (setq alist imenu--index-alist)) + (and alist (mapcar (function (lambda (item) (cond ((markerp (cdr item)) (set-marker (cdr item) nil)) - ((listp (cdr item)) + ((consp (cdr item)) (imenu--cleanup (cdr item)))))) - (if alist alist imenu--index-alist)) + alist) t)) (defun imenu-default-create-index-function () -- cgit v1.2.1