fixes bug 0004997

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10322 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
master
Didier Rémy 2010-04-28 10:33:43 +00:00
parent 236ffb982a
commit ffb6aee83e
1 changed files with 11 additions and 2 deletions

View File

@ -573,7 +573,11 @@ the camldebug commands `cd DIR' and `directory'."
(let ((output))
(if (buffer-name (process-buffer proc))
(let ((process-window))
(save-excursion
;; it does not seem necessary to save excursion here,
;; since set-buffer as a temporary effect.
;; comint-output-filter explicitly avoids it.
;; in version 23, it prevents the marker to stay at end of buffer
;; (save-excursion
(set-buffer (process-buffer proc))
;; If we have been so requested, delete the debugger prompt.
(if (marker-buffer camldebug-delete-prompt-marker)
@ -590,7 +594,12 @@ the camldebug commands `cd DIR' and `directory'."
(>= (point) (process-mark proc))
(get-buffer-window (current-buffer))))
;; Insert the text, moving the process-marker.
(comint-output-filter proc output))
(comint-output-filter proc output)
;; )
;; this was the end of save-excursion.
;; if save-excursion is used (comint-next-prompt 1) would be needed
;; to move the mark past then next prompt, but this is not as good
;; as solution.
(if process-window
(save-selected-window
(select-window process-window)