OK. Attached is the final patch.
Fernand, thank you very much.

----
Shyouzou Sugitani <[EMAIL PROTECTED]>
                  <[EMAIL PROTECTED]>
--- src/unix/video-drivers/xf86_dga2.c.dist     Sat Jan 26 19:18:01 2002
+++ src/unix/video-drivers/xf86_dga2.c  Mon Jan 28 06:35:23 2002
@@ -315,8 +315,7 @@
           who do a lott of dga <-> window switching will get a lott of
           children */
        static int first_time  = 1;
-       xf86_dga_fix_viewport  = 0;
-       xf86_dga_first_click   = 1;
+       xf86_dga_first_click   = 0;
        xf86ctx.palette_dirty  = FALSE;
        xf86ctx.old_grab_mouse = x11_grab_mouse;
        x11_grab_mouse         = FALSE;
@@ -402,7 +401,9 @@
                        xf86ctx.grabbed_mouse = 1;
        }
 
-       XDGASetViewport(display,xf86ctx.screen,0,0,XDGAFlipImmediate);
+       XDGASetViewport(display,xf86ctx.screen,0,0,0);
+       while(XDGAGetViewportStatus(display, xf86ctx.screen))
+               ;
 
        memset(xf86ctx.base_addr, 0,
               xf86ctx.device->mode.bytesPerScanline
@@ -522,12 +523,6 @@
 {
        int old_use_dirty = use_dirty;
    
-       if(xf86_dga_fix_viewport)
-       {
-               XF86DGASetViewPort(display,xf86ctx.screen,0,0);
-               xf86_dga_fix_viewport = 0;
-       }
-
        if (current_palette->lookup_dirty)
                use_dirty = 0;
        

Reply via email to