(Info-insert-breadcrumbs): Be careful to preserve history.
authorStefan Monnier <monnier@iro.umontreal.ca>
Sat, 14 Jun 2008 01:59:21 +0000 (01:59 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sat, 14 Jun 2008 01:59:21 +0000 (01:59 +0000)
lisp/ChangeLog
lisp/info.el

index 0db9e21..fa5da5c 100644 (file)
@@ -1,3 +1,7 @@
+2008-06-14  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * info.el (Info-insert-breadcrumbs): Be careful to preserve history.
+
 2008-06-13  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        * term/linux.el (terminal-init-linux): Load t-mouse.
index ae62e9d..b274c82 100644 (file)
@@ -681,9 +681,8 @@ it says do not attempt further (recursive) error recovery."
   ;; Record the node we are leaving, if we were in one.
   (and (not no-going-back)
        Info-current-file
-       (setq Info-history
-            (cons (list Info-current-file Info-current-node (point))
-                  Info-history)))
+       (push (list Info-current-file Info-current-node (point))
+             Info-history))
   (Info-find-node-2 filename nodename no-going-back))
 
 ;;;###autoload
@@ -3726,8 +3725,9 @@ the variable `Info-file-list-for-emacs'."
           (let ((up (Info-extract-pointer "up")))
             (push up crumbs)
             (setq depth (1- depth))
-            (Info-goto-node up)))
-      (Info-goto-node onode)
+            (Info-find-node Info-current-file up 'no-going-back)))
+      (if crumbs                  ;Do bother going back if we haven't moved.
+          (Info-find-node Info-current-file onode 'no-going-back))
       ;; Add bottom node.
       (when Info-use-header-line
         ;; Let it disappear if crumbs is nil.