From 0613507b4fc1f5fdb73fc4e98288413d77848c9f Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Wed, 10 Nov 1993 00:38:47 +0000 Subject: [PATCH] (comint-postoutput-scroll-to-bottom): Don't alter point in a window if it's after the process-mark. --- lisp/comint.el | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lisp/comint.el b/lisp/comint.el index 771be5e5838..dd0e61559fa 100644 --- a/lisp/comint.el +++ b/lisp/comint.el @@ -1197,14 +1197,14 @@ This function should be in the list `comint-output-filter-functions'." (if (eq (window-buffer window) current) (progn (select-window window) - (if (or (eq scroll t) (eq scroll 'all) - ;; Maybe user wants point to jump to the end. - (and (eq scroll 'this) (eq selected window)) - (and (eq scroll 'others) (not (eq selected window))) - ;; If point was at the end, keep it at the end. - (and (>= (point) - (- (process-mark process) (length string))) - (< (point) (process-mark process)))) + (if (and (< (point) (process-mark process)) + (or (eq scroll t) (eq scroll 'all) + ;; Maybe user wants point to jump to the end. + (and (eq scroll 'this) (eq selected window)) + (and (eq scroll 'others) (not (eq selected window))) + ;; If point was at the end, keep it at the end. + (>= (point) + (- (process-mark process) (length string))))) (goto-char (process-mark process))) ;; Optionally scroll so that the text ;; ends at the bottom of the window. -- 2.39.5