From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Morgan Smith Newsgroups: gmane.emacs.bugs Subject: bug#64516: [PATCH] docview: Only enable imenu when supported Date: Fri, 07 Jul 2023 11:24:01 -0400 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="32107"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) To: 64516@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Jul 07 17:30:45 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qHnPx-0008Ca-3J for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 07 Jul 2023 17:30:45 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qHnPZ-0005IA-BZ; Fri, 07 Jul 2023 11:30:21 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qHnPH-0005GP-1J for bug-gnu-emacs@gnu.org; Fri, 07 Jul 2023 11:30:04 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qHnPG-0000D9-AL for bug-gnu-emacs@gnu.org; Fri, 07 Jul 2023 11:30:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qHnPF-0001uY-W6 for bug-gnu-emacs@gnu.org; Fri, 07 Jul 2023 11:30:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Morgan Smith Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 07 Jul 2023 15:30:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 64516 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.16887437657274 (code B ref -1); Fri, 07 Jul 2023 15:30:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 7 Jul 2023 15:29:25 +0000 Original-Received: from localhost ([127.0.0.1]:43626 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qHnOe-0001tG-VD for submit@debbugs.gnu.org; Fri, 07 Jul 2023 11:29:25 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:53184) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qHnOd-0001t4-1Q for submit@debbugs.gnu.org; Fri, 07 Jul 2023 11:29:23 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qHnOU-0002yL-RK for bug-gnu-emacs@gnu.org; Fri, 07 Jul 2023 11:29:16 -0400 Original-Received: from mail-dm6nam04olkn20831.outbound.protection.outlook.com ([2a01:111:f400:7e8b::831] helo=NAM04-DM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qHnOR-0008CA-Vu for bug-gnu-emacs@gnu.org; Fri, 07 Jul 2023 11:29:13 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mU2DVY2A4gJlXJCD80XUooLvKhPbS1BVhA3G67r2pQrIiBXYSJcFfJVNB4CWmLHwuwSgnsY/8YbnQ0FpwgttVhv0K6fAKka8z6sDziGxd8SoZ2XReYPR2+57GiMWwAuqyBtwGbYzaIklHFxXHvbRcsxSYJ9ReQh1kQ6/LqdYxw4KNT7X/pElQtGbsT7cTmhQ8Qsumybn9QozgBLFlJt+7605QXaQnRp5MC/EDGUsk1PMcy1w3/uBoUUv6kfL+qtfNNja30bokUfN5bjSzSyWAZeQwlrTGNExcLEzAGNGSf00/K5Gu/KA3nKiXg3n8x64Mq/83h/eETHks3R7SJVP5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=SdaBem1W+uegYTtKOb02oLVGdnpwZYXUhZ6q546bKhA=; b=cT/oqTsl2RffRlJ6DOCSR1owEFqGeHVfDdFjcMzfQr5l0dEAcqOhYG99Jqbe/Dy8kcMnMXNB3T/KEUrtDcRIuwKL9608UjNMh1IRe519ghfsqR1PU2cctYje8yuILvGcNh5qPUhv0b6qAcnXmEpPDPTtBr79UtpWjZAth+rNvDTjH1qua8SHUCz/SI6KvWDsdnS0zkbcRXFM8qu/Y2/oQFQ9shDFTldG0aGKxYPtkqRgQAPf/oU4Wa3r/CqhFTjrKS+B6n1S0lJ6m1M2i7Joj0mx64UNhP457ZQKkZ3sttSL85qanCWYLXo3qXwCf1kwmCrxATVyE8ycqA3fI99dkQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SdaBem1W+uegYTtKOb02oLVGdnpwZYXUhZ6q546bKhA=; b=mtAiHLktBmtY636zMKcxYPGmkCFsTpaG3cpd6ix6FbendjVWmrKsHPSSZh99aaCPDx3wdh2jbdVX6ocuip/0zHfQyFNsIj3JfrL1D28m134fKix7xA37CInDE+ZC1uuIgNaO9A40V9cebkq+x+axQKzNogmZ6k1wh8Sc7XCq2sAFPVotyFhTo41TYU9syra3b2n8jKi2D62SghFOCfEwNX44sBm9R+VtO9n/O0Czck1I1dJLVx/8WfDGSUxa2uaidb4VPAmXHMzF1vHWx8/xIEjG/DdNt5fi/lVgyP0J6KW2mdnQQHJq0xTxbOFjZK2a4wuWQDAr7j0wiiY+P4x9fw== Original-Received: from DM5PR03MB3163.namprd03.prod.outlook.com (2603:10b6:4:40::24) by SJ0PR03MB5615.namprd03.prod.outlook.com (2603:10b6:a03:27a::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.17; Fri, 7 Jul 2023 15:24:04 +0000 Original-Received: from DM5PR03MB3163.namprd03.prod.outlook.com ([fe80::d561:bdf5:3af9:b03e]) by DM5PR03MB3163.namprd03.prod.outlook.com ([fe80::d561:bdf5:3af9:b03e%4]) with mapi id 15.20.6565.025; Fri, 7 Jul 2023 15:24:04 +0000 X-Hashcash: 1:20:230707:bug-gnu-emacs@gnu.org::j5ITP967/guWxTx1:0BGk X-TMN: [0o507szMLXiXuDXTkw8g0pZEHfsgN0duBU71qvaic35cAHwmuYww/g==] X-ClientProxiedBy: YQZPR01CA0100.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:83::21) To DM5PR03MB3163.namprd03.prod.outlook.com (2603:10b6:4:40::24) X-Microsoft-Original-Message-ID: <87bkgneodq.fsf@outlook.com> X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM5PR03MB3163:EE_|SJ0PR03MB5615:EE_ X-MS-Office365-Filtering-Correlation-Id: f6c7c8a1-31e0-4cca-1b10-08db7efe32a0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Dsb+mAKNJ1ASQrwMe3ykIop4z8LItX2Z8Mr2nPQZdovvk6zCjkpwLHfSuwtgurlEhXfPWVAQAEsFc0aM6y+sA/5b4VH9Xa51kHQmOzKXnblVoFzwJTEObPhmDQ/OyeMAYgNAx6p4mhvbQ3lmTdmXReU3/6d53RJJLDKY4w/8FHVBvdhx7izOO9KzpOI8kNib+Yv+U2aVYivYt9TmTtW9bOPmZi7Y2vMCSyFkQEWz3L6Uow1LBFUtMoQSa0IyKwLz3446mdhiafEQkQsQNC+6aROI5kqw3lYlSrXiFB5xc45ZiJM5q7Tx9Gu7EvHrrglnh859+Vqovd6OZ9KUDVakZi/ZAyz75Q4/LsL1fO/AQEoKXnxqwYifJCv826U9qgEIg7JdXh0AXbOfuR3t7gUpxH9rF8B04rf/bf+nJt1wzFOyrhWb/WC1NAOBEKKTfQGUiCr2EEpNP552bG42KnUMGE+dwwEVI7sjayv0NZq/QvKWu/Y5Uf6cOSHUagRrSUZ/LAkXyiSxxcvKpGlbbNv7MrZCvSK8xWaKwzuLea8dCUQcssCgre7uKccAokF7ogBp X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: ZPQDKHBQjGL4xgf+lsCSv09IsDPQV4NqqRKlE1gwvEwmgtMLl/8dLLgHKya3WuGzMsrED3E8gbmdDogLdocghCrNFDa5f/3sfrJcYNbkndZG/iins4sadQ+1/9I/BbwGjI3ymTejcbA9mv/+bl5s3ix8PqwcaNk/GxeRsiE6rCmZ3tX14JC1StGGRXhKEL4WVD/biY8zz3RrHNMGOXCdSee+3qtn+YAtYiA7IgXKlygjcfeUs+rOgit0sCXzBbBVY1tJIOpHmt7eDAzAQCV4uVXGijBn59AGGDsdAkHna9vztro0XRb3acB9E3h3vZnNaZlv0SMnNAVxqXgfI3+QN8m84WItsAIwtobepcEQL3BrPDKufLUL/1ShglaRAorULMDHY2Q1QlDYyKM6V/0ucedrF4azkdz4wVuLKo7V62U/98OsdmocIEGYuE8pOZicef/9K6XytXYWTlWxMyvcOyb4HpBEIZL36lsaSta+e1dFziFsBXXv9dosKvFN/n3uzL4ImuHXxtOXMix9XPPxR2FdcaSAZMSRetyWq1jSTOWPBZjDG1to7T/QVIm+jxyojlxotAT8CO3gEbayag9sWEzMaXYERK6lOdteMYult42RmIfNfB5ngWKt23B+jsAIxzcUKalHxtfleTWJvdWr4VBHzuJfmNgGfmFE3icsL5a2L/6PfO6qySYy6gtEGKE/5cm+gqdvpOTpLwpvB7v1aOUM0t0BMg5pgSUDR6bY6QFJ0l1Ld0q7HNIa9P BqUhKi1+yLLnEPxhs9KCgpnX+EGcRM/vcsZPls+y9yrcAwQIUe/WbcEaXxI9l8fvJ2yMZElJMvtbS5ANeKDrhM546NjwTHB/sl X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f6c7c8a1-31e0-4cca-1b10-08db7efe32a0 X-MS-Exchange-CrossTenant-AuthSource: DM5PR03MB3163.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jul 2023 15:24:04.5243 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR03MB5615 Received-SPF: pass client-ip=2a01:111:f400:7e8b::831; envelope-from=Morgan.J.Smith@outlook.com; helo=NAM04-DM6-obe.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:264729 Archived-At: --=-=-= Content-Type: text/plain Hello, More info is in the commit message. To re-create the error open up an EPUB file (or possibly any non-PDF file in doc-view) and press 'M-g i' to run 'imenu'. Doing that I get the following error: Debugger entered--Lisp error: (wrong-type-argument stringp nil) string-match("\\`PK\\'" nil) imenu-find-default("PK" (("*Rescan*" . -99) nil)) imenu--completion-buffer((("*Rescan*" . -99) nil) nil) imenu-choose-buffer-index() byte-code("\300 C\207" [imenu-choose-buffer-index] 1) command-execute(imenu) --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-docview-Only-enable-imenu-when-supported.patch >From cd73281f324a5b21c304789ca7b828295e8718d9 Mon Sep 17 00:00:00 2001 From: Morgan Smith Date: Fri, 7 Jul 2023 11:17:15 -0400 Subject: [PATCH] docview: Only enable imenu when supported While 'mutool' supports many filetypes, 'mutool show' only supports PDF files. This would lead to cryptic imenu errors when opening other file types (like EPUB) since we would parse the error output. During my testing this caused 'imenu--index-alist' to have a value of '(nil). * lisp/doc-view.el (doc-view--pdf-outline): Error when 'mutool' returns an error. (doc-view-imenu-setup): Don't check for 'mutool' as that is already done by 'doc-view-imenu-enabled'. Only enable imenu for PDF documents. --- lisp/doc-view.el | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lisp/doc-view.el b/lisp/doc-view.el index b14655fb274..d9c12fc49c0 100644 --- a/lisp/doc-view.el +++ b/lisp/doc-view.el @@ -1912,7 +1912,8 @@ doc-view--pdf-outline (let ((outline nil) (fn (shell-quote-argument (expand-file-name fn)))) (with-temp-buffer - (insert (shell-command-to-string (format "mutool show %s outline" fn))) + (unless (= 0 (call-process "mutool" nil (current-buffer) nil "show" fn "outline")) + (error "Unable to create imenu index using `mutool'")) (goto-char (point-min)) (while (re-search-forward doc-view--outline-rx nil t) (push `((level . ,(length (match-string 1))) @@ -1961,7 +1962,7 @@ doc-view-imenu-index (defun doc-view-imenu-setup () "Set up local state in the current buffer for imenu, if needed." - (when (and doc-view-imenu-enabled (executable-find "mutool")) + (when (and doc-view-imenu-enabled (eq 'pdf doc-view-doc-type)) (setq-local imenu-create-index-function #'doc-view-imenu-index imenu-submenus-on-top nil imenu-sort-function nil -- 2.40.1 --=-=-=--