xserver: Branch 'server-1.5-branch'

Michel Daenzer daenzer at kemper.freedesktop.org
Mon Apr 7 02:15:44 PDT 2008


 exa/exa_render.c |   10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

New commits:
commit 685a04c2bfa779203bd6101f065b682cc0552514
Author: Owen W. Taylor <otaylor at fishsoup.net>
Date:   Thu Apr 3 14:50:05 2008 -0400

    EXA: Fix TS origin computation when implementing RenderComposite with tiling.
    (cherry picked from commit 6b1a27023e48b661c4bb3b61181ac57608d8e448)

diff --git a/exa/exa_render.c b/exa/exa_render.c
index 38e2a04..da81401 100644
--- a/exa/exa_render.c
+++ b/exa/exa_render.c
@@ -650,7 +650,7 @@ exaComposite(CARD8	op,
 		     !pSrc->transform &&
 		     pSrc->repeatType == RepeatNormal)
 	    {
-		DDXPointRec srcOrg;
+		DDXPointRec patOrg;
 
 		/* Let's see if the driver can do the repeat in one go */
 		if (pExaScr->info->PrepareComposite && !pSrc->alphaMap &&
@@ -674,12 +674,14 @@ exaComposite(CARD8	op,
 					       width, height))
 		    goto done;
 
-		srcOrg.x = (xSrc - xDst) % pSrc->pDrawable->width;
-		srcOrg.y = (ySrc - yDst) % pSrc->pDrawable->height;
+		/* pattern origin is the point in the destination drawable
+		 * corresponding to (0,0) in the source */
+		patOrg.x = xDst - xSrc;
+		patOrg.y = yDst - ySrc;
 
 		ret = exaFillRegionTiled(pDst->pDrawable, &region,
 					 (PixmapPtr)pSrc->pDrawable,
-					 &srcOrg, FB_ALLONES, GXcopy);
+					 &patOrg, FB_ALLONES, GXcopy);
 
 		REGION_UNINIT(pDst->pDrawable->pScreen, &region);
 


More information about the xorg-commit mailing list