From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Filipp Gunbin Newsgroups: gmane.emacs.devel Subject: [imenu.el] Attempt to fix broken imenu--generic-function Date: Tue, 17 Jul 2018 23:34:30 +0300 Message-ID: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1531859630 19389 195.159.176.226 (17 Jul 2018 20:33:50 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 17 Jul 2018 20:33:50 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (darwin) Cc: emacs-devel@gnu.org To: drew.adams@oracle.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jul 17 22:33:46 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ffWfI-0004ui-Kk for ged-emacs-devel@m.gmane.org; Tue, 17 Jul 2018 22:33:45 +0200 Original-Received: from localhost ([::1]:33178 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ffWhP-0004k2-Ge for ged-emacs-devel@m.gmane.org; Tue, 17 Jul 2018 16:35:55 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:51067) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ffWgC-0004ia-Vr for emacs-devel@gnu.org; Tue, 17 Jul 2018 16:34:41 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ffWg7-0001B1-U5 for emacs-devel@gnu.org; Tue, 17 Jul 2018 16:34:40 -0400 Original-Received: from out2-smtp.messagingengine.com ([66.111.4.26]:40531) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1ffWg7-00019M-J6 for emacs-devel@gnu.org; Tue, 17 Jul 2018 16:34:35 -0400 Original-Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 673BE21BBE; Tue, 17 Jul 2018 16:34:33 -0400 (EDT) Original-Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Tue, 17 Jul 2018 16:34:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.fm; h= cc:content-type:date:from:message-id:mime-version:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; bh=t0SVYhkMnMLv/Ca/c xgbi8tCPb6OnR+qBz/ARbPi5Kw=; b=bzqBQVPTQAz/9zldTqKhWYwZhQE9Fb9Vw 5eHUdguXA5DhZ4rCQNMc1nBXFFe3zKN8T7l7QWTR7nohqyhoYV5aviADf8P9T925 8BBtyVnSd/ZThq2aqejxvo/4QcsTFG2vHGUOvarjzPnTW2xqLzhAZzD5BdqXtQqP LkXzQQYgVUlkFzcYQ1DTEfI+TH3rmI6gfBVKyYp7tWQ7j8UoLrd46/gA89fP12Sn 7Gik0hQQmUSEUSJWlFX1PmG5c+BwGzJSe709wP7PkUmkb3IoUFgFQs6kHyJ0rq9o agun+ffnK1vK+zjjPglD76N0hQX0mUUJWzkwMLyMqWd5qP7DkwI3g== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:message-id :mime-version:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm3; bh=t0SVYhkMnMLv/Ca/cxgbi8tCPb6OnR+qBz/ARbPi5Kw=; b=mFJfAH+g w3wHrJn6M4KPwswkd40etYBhvxWEuvM2v4lXkru2vaWkKolwkOF+6w9HEj1T7EIm 5dNtFAClHAX+lMjs0KFifgRCFgsIqdYxHVyfnJhzxFpalqyP2gugKqHgx7Ldq4aW BT+02pD15i0v4g440LClsQKcfgtoAxovkaSmy3JsHMsltIRHO4esAcHSPgl+F/k3 RZxv9YLhTOe/vWKEK7S9hp4qgdkyEs0yH2mjP8C55ue64ryM82fWxIHn8wwAby+f dzxY1e0jvtgLxF3OoEo79CjdX9U3y0dMC/LSx5B2q/MDDE8iTAOe0k7n9L6cF5Hn JBKNbLNupQj7/w== X-ME-Proxy: X-ME-Sender: Original-Received: from fgunbin.playteam.ru (unknown [94.25.218.10]) by mail.messagingengine.com (Postfix) with ESMTPA id 8B7231026E; Tue, 17 Jul 2018 16:34:32 -0400 (EDT) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 66.111.4.26 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:227518 Archived-At: Drew, I'm sorry, your commit 77166e0da2d58f2f6436989b7059d913be5b3439 broke imenu. Do you have objections for this fix? diff --git a/lisp/imenu.el b/lisp/imenu.el index edca51e3ad..7285b10574 100644 --- a/lisp/imenu.el +++ b/lisp/imenu.el @@ -832,15 +832,14 @@ imenu--generic-function (dolist (item index-alist) (when (listp item) (setcdr item (sort (cdr item) 'imenu--sort-by-position)))) - (let ((main-element (assq nil index-alist))) - (nconc (delq main-element (delq 'dummy index-alist)) - (cdr main-element))) ;; Remove any empty menus. That can happen because of skipping ;; things inside comments or strings. - (when (consp (car index-alist)) - (setq index-alist (cl-delete-if-not - (lambda (it) (cdr it)) - index-alist))))) + (setq index-alist (cl-delete-if + (lambda (it) (and (consp it) (null (cdr it)))) + index-alist)) + (let ((main-element (assq nil index-alist))) + (nconc (delq main-element (delq 'dummy index-alist)) + (cdr main-element))))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;