bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#1116: Emacs hangs when executing Info-final-node


From: martin rudalics
Subject: bug#1116: Emacs hangs when executing Info-final-node
Date: Wed, 08 Oct 2008 16:58:00 +0200
User-agent: Thunderbird 2.0.0.16 (Windows/20080708)

> I' running GNU Emacs 22.3.1 (i386-mingw-nt5.1.2600) of 2008-09-07 on 
SOFT-MJASON
>
> D:\> runemacs -Q --debug-init
>
> C-h i       ;; open *info*
> Press '>'  ;; execute 'Info-final-node and emacs hangs!
>
> Always reproduced.

Would the attached patch help?

martin
*** info.el.~1.501.2.7.~        2008-03-25 14:48:24.000000000 +0100
--- info.el     2008-10-08 16:52:49.703125000 +0200
***************
*** 2437,2449 ****
      (Info-goto-node (Info-extract-menu-counting nil))
      ;; If the last node in the menu is not last in pointer structure,
      ;; move forward until we can't go any farther.
!     (while (Info-forward-node t t) nil)
      ;; Then keep moving down to last subnode, unless we reach an index.
      (while (and (not (Info-index-node))
                (save-excursion (search-forward "\n* Menu:" nil t)))
        (Info-goto-node (Info-extract-menu-counting nil)))))
  
! (defun Info-forward-node (&optional not-down no-error)
    "Go forward one node, considering all nodes as forming one sequence."
    (interactive)
    (goto-char (point-min))
--- 2437,2449 ----
      (Info-goto-node (Info-extract-menu-counting nil))
      ;; If the last node in the menu is not last in pointer structure,
      ;; move forward until we can't go any farther.
!     (while (Info-forward-node t t t) nil)
      ;; Then keep moving down to last subnode, unless we reach an index.
      (while (and (not (Info-index-node))
                (save-excursion (search-forward "\n* Menu:" nil t)))
        (Info-goto-node (Info-extract-menu-counting nil)))))
  
! (defun Info-forward-node (&optional not-down no-error not-up)
    "Go forward one node, considering all nodes as forming one sequence."
    (interactive)
    (goto-char (point-min))
***************
*** 2461,2467 ****
          ((save-excursion (search-backward "next:" nil t))
           (Info-next)
           t)
!         ((and (save-excursion (search-backward "up:" nil t))
                ;; Use string-equal, not equal, to ignore text props.
                (not (string-equal (downcase (Info-extract-pointer "up"))
                                   "top")))
--- 2461,2468 ----
          ((save-excursion (search-backward "next:" nil t))
           (Info-next)
           t)
!         ((and (not not-up)
!               (save-excursion (search-backward "up:" nil t))
                ;; Use string-equal, not equal, to ignore text props.
                (not (string-equal (downcase (Info-extract-pointer "up"))
                                   "top")))

reply via email to

[Prev in Thread] Current Thread [Next in Thread]