Must run %NOTICE-WINDOW-CHANGES! when doing direct update so that any
authorChris Hanson <org/chris-hanson/cph>
Sat, 16 Jan 1993 05:15:30 +0000 (05:15 +0000)
committerChris Hanson <org/chris-hanson/cph>
Sat, 16 Jan 1993 05:15:30 +0000 (05:15 +0000)
changes to the window are handled correctly.

v7/src/edwin/bufwin.scm

index 30686b10a9957f7bc696d40466f9ed418ae0b966..889f7d403e1d74306a59f97befd5dbdbaaae98b2 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;;    $Id: bufwin.scm,v 1.299 1993/01/12 10:50:36 cph Exp $
+;;;    $Id: bufwin.scm,v 1.300 1993/01/16 05:15:30 cph Exp $
 ;;;
 ;;;    Copyright (c) 1986, 1989-93 Massachusetts Institute of Technology
 ;;;
       ((%window-debug-trace window) 'window window 'direct-update!
                                    display-style))
   (and (%window-saved-screen window)
-       (with-screen-in-update (%window-saved-screen window) display-style
-        (lambda ()
-          (let ((finished?
-                 (update-buffer-window! window
-                                        (%window-saved-screen window)
-                                        (%window-saved-x-start window)
-                                        (%window-saved-y-start window)
-                                        (%window-saved-xl window)
-                                        (%window-saved-xu window)
-                                        (%window-saved-yl window)
-                                        (%window-saved-yu window)
-                                        display-style)))
-            (if finished?
-                (set-car! (window-redisplay-flags window) false))
-            finished?)))))
+       (begin
+        (%notice-window-changes! window)
+        (with-screen-in-update (%window-saved-screen window) display-style
+          (lambda ()
+            (let ((finished?
+                   (update-buffer-window! window
+                                          (%window-saved-screen window)
+                                          (%window-saved-x-start window)
+                                          (%window-saved-y-start window)
+                                          (%window-saved-xl window)
+                                          (%window-saved-xu window)
+                                          (%window-saved-yl window)
+                                          (%window-saved-yu window)
+                                          display-style)))
+              (if finished?
+                  (set-car! (window-redisplay-flags window) false))
+              finished?))))))
 
 (define (update-buffer-window! window screen x-start y-start xl xu yl yu
                               display-style)