[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")))