xserver: Branch 'dri2-swapbuffers'

Kristian Høgsberg krh at kemper.freedesktop.org
Thu Jul 23 15:15:53 PDT 2009


 hw/xfree86/dri2/dri2.c |   15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

New commits:
commit 155cc6d6707e1740d6e88120d6398b3a44d3683c
Author: Kristian Høgsberg <krh at redhat.com>
Date:   Thu Jul 23 10:15:17 2009 -0400

    Only do pageflipping when the window isn't redirected

diff --git a/hw/xfree86/dri2/dri2.c b/hw/xfree86/dri2/dri2.c
index 78eb101..8f5e0c3 100644
--- a/hw/xfree86/dri2/dri2.c
+++ b/hw/xfree86/dri2/dri2.c
@@ -346,21 +346,20 @@ static Bool
 DRI2FlipCheck(DrawablePtr pDraw)
 {
     ScreenPtr pScreen = pDraw->pScreen;
-    WindowPtr pWin;
-    PixmapPtr pWinPixmap;
+    WindowPtr pWin, pRoot;
+    PixmapPtr pWinPixmap, pRootPixmap;
 
     if (pDraw->type == DRAWABLE_PIXMAP)
 	return TRUE;
 
+    pRoot = WindowTable[pScreen->myNum];
+    pRootPixmap = pScreen->GetWindowPixmap(pRoot);
+
     pWin = (WindowPtr) pDraw;
     pWinPixmap = pScreen->GetWindowPixmap(pWin);
-    if (pDraw->width != pWinPixmap->drawable.width)
-	return FALSE;
-    if (pDraw->height != pWinPixmap->drawable.height)
-	return FALSE;
-    if (pDraw->depth != pWinPixmap->drawable.depth)
+    if (pRootPixmap != pWinPixmap)
 	return FALSE;
-    if (!REGION_EQUAL(pScreen, &pWin->clipList, &pWin->winSize))
+    if (!REGION_EQUAL(pScreen, &pWin->clipList, &pRoot->winSize))
 	return FALSE;
 
     return TRUE;


More information about the xorg-commit mailing list