When creating a new frame, don't select it -- attempting to do this
authorChris Hanson <org/chris-hanson/cph>
Tue, 8 Oct 1996 20:17:28 +0000 (20:17 +0000)
committerChris Hanson <org/chris-hanson/cph>
Tue, 8 Oct 1996 20:17:28 +0000 (20:17 +0000)
causes a race condition that can cause X to signal an error.  Instead,
rely on the window manager to select the window if that is
appropriate.

v7/src/edwin/wincom.scm

index 0e5bf7fc05d2b6562b27f22b486e9c5b43bd25c4..3354df3f71fb699b3e92dc552bf41cad9109f10f 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;;    $Id: wincom.scm,v 1.120 1996/05/11 08:44:28 cph Exp $
+;;;    $Id: wincom.scm,v 1.121 1996/10/08 20:17:28 cph Exp $
 ;;;
 ;;;    Copyright (c) 1987, 1989-96 Massachusetts Institute of Technology
 ;;;
@@ -403,15 +403,12 @@ or if the window is the only window of its frame."
 
 (define (select-buffer-other-screen buffer)
   (if (multiple-screens?)
-      (select-screen
-       (let ((screen (other-screen (selected-screen) 1 #t)))
-        (if screen
-            (begin
-              (select-buffer-in-window buffer
-                                       (screen-selected-window screen)
-                                       true)
-              screen)
-            (make-screen buffer))))
+      (let ((screen (other-screen (selected-screen) 1 #t)))
+       (if screen
+           (select-buffer-in-window buffer
+                                    (screen-selected-window screen)
+                                    true)
+           (make-screen buffer)))
       (editor-error "Display doesn't support multiple screens")))
 
 (define (shrink-window-if-larger-than-buffer window)