xserver: Branch 'master' - 2 commits

Keith Packard keithp at kemper.freedesktop.org
Thu May 20 07:49:51 PDT 2010


 configure.ac      |    2 +-
 exa/exa.c         |    5 ++++-
 exa/exa_priv.h    |   11 +++++++++++
 exa/exa_unaccel.c |   22 ++++++++++++++++++++++
 4 files changed, 38 insertions(+), 2 deletions(-)

New commits:
commit a1c2bdb6ab7a4f374844f80e83620b155991e817
Author: Michel Dänzer <daenzer at vmware.com>
Date:   Thu May 20 10:13:06 2010 +0200

    EXA: Wrap Glyphs even without Composite acceleration.
    
    In order to avoid migration ping-pong when accumulating glyphs in a mask
    picture.
    
    Signed-off-by: Michel Dänzer <daenzer at vmware.com>
    Reviewed-by: Adam Jackson <ajax at redhat.com>
    Signed-off-by: Keith Packard <keithp at keithp.com>

diff --git a/exa/exa.c b/exa/exa.c
index 7b3b9a0..46a850f 100644
--- a/exa/exa.c
+++ b/exa/exa.c
@@ -932,8 +932,11 @@ exaDriverInit (ScreenPtr		pScreen,
 
     if (ps) {
 	wrap(pExaScr, ps, Composite, exaComposite);
-	if (pScreenInfo->PrepareComposite)
+	if (pScreenInfo->PrepareComposite) {
 	    wrap(pExaScr, ps, Glyphs, exaGlyphs);
+	} else {
+	    wrap(pExaScr, ps, Glyphs, ExaCheckGlyphs);
+	}
 	wrap(pExaScr, ps, Trapezoids, exaTrapezoids);
 	wrap(pExaScr, ps, Triangles, exaTriangles);
 	wrap(pExaScr, ps, AddTraps, ExaCheckAddTraps);
diff --git a/exa/exa_priv.h b/exa/exa_priv.h
index ed8be31..14c99e9 100644
--- a/exa/exa_priv.h
+++ b/exa/exa_priv.h
@@ -509,6 +509,17 @@ ExaCheckComposite (CARD8      op,
 		  CARD16     width,
 		  CARD16     height);
 
+void
+ExaCheckGlyphs (CARD8	      op,
+		PicturePtr    pSrc,
+		PicturePtr    pDst,
+		PictFormatPtr maskFormat,
+		INT16	      xSrc,
+		INT16	      ySrc,
+		int	      nlist,
+		GlyphListPtr  list,
+		GlyphPtr      *glyphs);
+
 /* exa_offscreen.c */
 void
 ExaOffscreenSwapOut (ScreenPtr pScreen);
diff --git a/exa/exa_unaccel.c b/exa/exa_unaccel.c
index 2f8c462..402d76d 100644
--- a/exa/exa_unaccel.c
+++ b/exa/exa_unaccel.c
@@ -680,6 +680,28 @@ out_no_clip:
     EXA_POST_FALLBACK(pScreen);
 }
 
+/**
+ * Avoid migration ping-pong when using a mask.
+ */
+void
+ExaCheckGlyphs (CARD8	      op,
+		PicturePtr    pSrc,
+		PicturePtr    pDst,
+		PictFormatPtr maskFormat,
+		INT16	      xSrc,
+		INT16	      ySrc,
+		int	      nlist,
+		GlyphListPtr  list,
+		GlyphPtr      *glyphs)
+{
+    ScreenPtr pScreen = pDst->pDrawable->pScreen;
+    EXA_PRE_FALLBACK(pScreen);
+
+    miGlyphs(op, pSrc, pDst, maskFormat, xSrc, ySrc, nlist, list, glyphs);
+
+    EXA_POST_FALLBACK(pScreen);
+}
+
 void
 ExaCheckAddTraps (PicturePtr	pPicture,
 		  INT16		x_off,
commit 00581d4a42e2a0e7652834973645a4a9ed59cf93
Author: Tiago Vignatti <tiago.vignatti at nokia.com>
Date:   Fri May 14 19:31:56 2010 +0300

    configure: force new xproto version dependency
    
    commit bca85e2e127a8a23e3a2debcfeb3ae07cd3c66ac introduced it.
    
    Use the version that includes _X_NORETURN
    
    Signed-off-by: Tiago Vignatti <tiago.vignatti at nokia.com>
    Reviewed-by: Julien Cristau <jcristau at debian.org>
    Signed-off-by: Keith Packard <keithp at keithp.com>

diff --git a/configure.ac b/configure.ac
index 1c7875e..4aafceb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -793,7 +793,7 @@ WINDOWSWMPROTO="windowswmproto"
 APPLEWMPROTO="applewmproto >= 1.4"
 
 dnl Core modules for most extensions, et al.
-REQUIRED_MODULES="[randrproto >= 1.2.99.3] [renderproto >= 0.11] [fixesproto >= 4.1] [damageproto >= 1.1] [xcmiscproto >= 1.2.0] [xextproto >= 7.0.99.3] [xproto >= 7.0.13] [xtrans >= 1.2.2] [bigreqsproto >= 1.1.0] fontsproto [inputproto >= 1.9.99.902] [kbproto >= 1.0.3]"
+REQUIRED_MODULES="[randrproto >= 1.2.99.3] [renderproto >= 0.11] [fixesproto >= 4.1] [damageproto >= 1.1] [xcmiscproto >= 1.2.0] [xextproto >= 7.0.99.3] [xproto >= 7.0.17] [xtrans >= 1.2.2] [bigreqsproto >= 1.1.0] fontsproto [inputproto >= 1.9.99.902] [kbproto >= 1.0.3]"
 REQUIRED_LIBS="xfont xau [pixman-1 >= 0.15.20]"
 
 dnl List of libraries that require a specific version


More information about the xorg-commit mailing list