From: Chris Hanson Date: Tue, 8 Mar 1994 21:43:47 +0000 (+0000) Subject: Attempt to preserve the WINDOW-START-MARK of a buffer's window when X-Git-Tag: 20090517-FFI~7245 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=7c88eb47ed0d6855da18c21e2ebcd5b19a18e8c5;p=mit-scheme.git Attempt to preserve the WINDOW-START-MARK of a buffer's window when the buffer is reverted. --- diff --git a/v7/src/edwin/vc.scm b/v7/src/edwin/vc.scm index fd3badf02..9d6f12905 100644 --- a/v7/src/edwin/vc.scm +++ b/v7/src/edwin/vc.scm @@ -1,6 +1,6 @@ ;;; -*-Scheme-*- ;;; -;;; $Id: vc.scm,v 1.4 1994/03/08 21:40:02 cph Exp $ +;;; $Id: vc.scm,v 1.5 1994/03/08 21:43:47 cph Exp $ ;;; ;;; Copyright (c) 1994 Massachusetts Institute of Technology ;;; @@ -840,7 +840,7 @@ the value of vc-log-mode-hook." ;;;; RCS Commands (define vc-type:rcs - (make-vc-type 'RCS "$Id: vc.scm,v 1.4 1994/03/08 21:40:02 cph Exp $")) + (make-vc-type 'RCS "$Id: vc.scm,v 1.5 1994/03/08 21:43:47 cph Exp $")) (define-vc-master-template vc-type:rcs (lambda (pathname) @@ -1187,8 +1187,9 @@ the value of vc-log-mode-hook." ;; in spite of changes due to expanded version-control keywords. (let ((point-contexts (map (lambda (window) - (cons window - (vc-mark-context (window-point window)))) + (list window + (vc-mark-context (window-point window)) + (vc-mark-context (window-start-mark window)))) (buffer-windows buffer))) (point-context (vc-mark-context (buffer-point buffer))) (mark-context (vc-mark-context (buffer-mark buffer)))) @@ -1199,9 +1200,13 @@ the value of vc-log-mode-hook." (for-each (lambda (entry) (if (and (window-live? (car entry)) (eq? buffer (window-buffer (car entry)))) - (let ((point (vc-find-context buffer (cdr entry)))) - (if point - (set-window-point! (car entry) point))))) + (begin + (let ((m (vc-find-context buffer (cadr entry)))) + (if m + (set-window-point! (car entry) m))) + (let ((m (vc-find-context buffer (caddr entry)))) + (if m + (set-window-start-mark! (car entry) m)))))) point-contexts))) (let ((mark (vc-find-context buffer mark-context))) (if mark