xserver: Branch 'master'

Michel Dänzer daenzer at kemper.freedesktop.org
Thu Sep 3 10:23:07 PDT 2009


 exa/exa_mixed.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

New commits:
commit 8e873185f4cbfb2a36e1f43fe7da47fd9fd5aeea
Author: Michel Dänzer <daenzer at vmware.com>
Date:   Thu Sep 3 19:11:02 2009 +0200

    EXA: Preserve pPixmap->devPrivate.ptr in exaPixmapIsOffscreen_mixed.
    
    Otherwise we may incorrectly clobber it to NULL on repeated PrepareAccess
    calls.

diff --git a/exa/exa_mixed.c b/exa/exa_mixed.c
index 7ba62ea..01f87ba 100644
--- a/exa/exa_mixed.c
+++ b/exa/exa_mixed.c
@@ -236,14 +236,16 @@ exaPixmapIsOffscreen_mixed(PixmapPtr pPixmap)
     ScreenPtr pScreen = pPixmap->drawable.pScreen;
     ExaScreenPriv(pScreen);
     ExaPixmapPriv(pPixmap);
+    pointer saved_ptr;
     Bool ret;
 
     if (!pExaPixmap->driverPriv)
 	return FALSE;
 
+    saved_ptr = pPixmap->devPrivate.ptr;
     pPixmap->devPrivate.ptr = ExaGetPixmapAddress(pPixmap);
     ret = pExaScr->info->PixmapIsOffscreen(pPixmap);
-    pPixmap->devPrivate.ptr = NULL;
+    pPixmap->devPrivate.ptr = saved_ptr;
 
     return ret;
 }


More information about the xorg-commit mailing list