[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#531094: emacs: info.el::Info-goto-node - Wrong type argument: stringp, nil



reassign 531094 emacs23-el
retitle 531094 emacs23-el: info.el::Info-goto-node - Wrong type argument: stringp, nil
found 531094 23.1+1-2
tags 531094 + patch
thanks

Confirmed:

    apt-get install w3m-el emacs23 emacs23-el

    $ emacs -Q
    M-: (setq debug-on-error t) <return>
    C-h i   m   Emacs - w3m <return> i <return> 3

    Debugger entered--Lisp error: (wrong-type-argument stringp nil)
      string-match("\\s *\\((\\s *\\([^     )]*\\)\\s *)\\s *\\|\\)\\(.*\\)"
      nil)
      Info-goto-node(nil)
      Info-nth-menu-item()
      call-interactively(Info-nth-menu-item nil nil)

In original submitetr's words:

    I'm there on
    (info "(emacs-w3m)Index")
    and I can't enter
    "3" which runs the command Info-nth-menu-item

The problem seems to be at
/usr/local/share/emacs/23.0.91/lisp/info.el.gz

    2481(defun Info-nth-menu-item ()
    2482  "Go to the node of the Nth menu item.
    2483N is the digit argument used to invoke this command."
    2484  (interactive)
    2485  (Info-goto-node
    2486   (Info-extract-menu-counting
    2487    (- (aref (this-command-keys) (1- (length (this-command-keys))))
    ?0))))
    2488

The value of Info-extract-menu-counting isn't checked for nil before
passing it to Info-goto-node.

Changelog and Patch attached,
Jari

2009-08-14  Jari Aalto  <jari.aalto@cante.net>

        * info.el (Info-nth-menu-item): Check return value
        of `Info-extract-menu-counting' for nil.

>From 98e54359a29f0d3e8c0e8d514426a57a4511968f Mon Sep 17 00:00:00 2001
From: Jari Aalto <jari.aalto@cante.net>
Date: Fri, 14 Aug 2009 20:11:23 +0300
Subject: [PATCH] info.el: (Info-nth-menu-item): Check return value of Info-extract-menu-counting for nil


Signed-off-by: Jari Aalto <jari.aalto@cante.net>
---
 info.el |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/info.el b/info.el
index 4a90b3e..715a085 100644
--- a/info.el
+++ b/info.el
@@ -2482,9 +2482,10 @@ new buffer."
   "Go to the node of the Nth menu item.
 N is the digit argument used to invoke this command."
   (interactive)
-  (Info-goto-node
-   (Info-extract-menu-counting
-    (- (aref (this-command-keys) (1- (length (this-command-keys)))) ?0))))
+  (let ((node (Info-extract-menu-counting
+	       (- (aref (this-command-keys) (1- (length (this-command-keys)))) ?0))))
+    (if node
+	(Info-goto-node node))))
 
 (defun Info-top-node ()
   "Go to the Top node of this file."
-- 
1.6.3.3


Reply to: