Author: fabbione Date: 2004-09-20 07:11:14 -0500 (Mon, 20 Sep 2004) New Revision: 1831
Modified: people/fabbione/nv-driver-backport/debian/patches/030_Xserver_and_driver_region_primitive_fixups.diff Log: Fix Xv extensions. Modified: people/fabbione/nv-driver-backport/debian/patches/030_Xserver_and_driver_region_primitive_fixups.diff =================================================================== --- people/fabbione/nv-driver-backport/debian/patches/030_Xserver_and_driver_region_primitive_fixups.diff 2004-09-18 18:54:02 UTC (rev 1830) +++ people/fabbione/nv-driver-backport/debian/patches/030_Xserver_and_driver_region_primitive_fixups.diff 2004-09-20 12:11:14 UTC (rev 1831) @@ -11,9 +11,9 @@ Revert same REGION_EQUAL change in trident driver. -diff -Naurd xc.orig/programs/Xserver/hw/xfree86/drivers/ati/atimach64xv.c xc/programs/Xserver/hw/xfree86/drivers/ati/atimach64xv.c ---- xc.orig/programs/Xserver/hw/xfree86/drivers/ati/atimach64xv.c 2004-09-15 08:20:24.000000000 +0000 -+++ xc/programs/Xserver/hw/xfree86/drivers/ati/atimach64xv.c 2004-09-15 08:21:40.000000000 +0000 +diff -Naurd xc-old/programs/Xserver/hw/xfree86/drivers/ati/atimach64xv.c xc/programs/Xserver/hw/xfree86/drivers/ati/atimach64xv.c +--- xc-old/programs/Xserver/hw/xfree86/drivers/ati/atimach64xv.c 2004-09-20 11:09:00.000000000 +0000 ++++ xc/programs/Xserver/hw/xfree86/drivers/ati/atimach64xv.c 2004-09-20 11:10:14.000000000 +0000 @@ -34,6 +34,38 @@ #define MAKE_ATOM(string) MakeAtom(string, strlen(string), TRUE) #define MaxScale (CARD32)(CARD16)(-1) @@ -62,9 +62,9 @@ { REGION_COPY(pScreen, &pATI->VideoClip, pClip); if (pATI->AutoPaint) -diff -Naurd xc.orig/programs/Xserver/hw/xfree86/drivers/ati/r128_video.c xc/programs/Xserver/hw/xfree86/drivers/ati/r128_video.c ---- xc.orig/programs/Xserver/hw/xfree86/drivers/ati/r128_video.c 2004-09-15 08:20:24.000000000 +0000 -+++ xc/programs/Xserver/hw/xfree86/drivers/ati/r128_video.c 2004-09-15 08:21:40.000000000 +0000 +diff -Naurd xc-old/programs/Xserver/hw/xfree86/drivers/ati/r128_video.c xc/programs/Xserver/hw/xfree86/drivers/ati/r128_video.c +--- xc-old/programs/Xserver/hw/xfree86/drivers/ati/r128_video.c 2004-09-20 11:09:02.000000000 +0000 ++++ xc/programs/Xserver/hw/xfree86/drivers/ati/r128_video.c 2004-09-20 11:10:14.000000000 +0000 @@ -23,6 +23,38 @@ #define TIMER_MASK (OFF_TIMER | FREE_TIMER) @@ -113,9 +113,9 @@ REGION_COPY(pScrn->pScreen, &pPriv->clip, clipBoxes); /* draw these */ xf86XVFillKeyHelper(pScrn->pScreen, pPriv->colorKey, clipBoxes); -diff -Naurd xc.orig/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c ---- xc.orig/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c 2004-09-15 08:20:24.000000000 +0000 -+++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c 2004-09-15 08:21:40.000000000 +0000 +diff -Naurd xc-old/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c +--- xc-old/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c 2004-09-20 11:09:00.000000000 +0000 ++++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c 2004-09-20 11:10:14.000000000 +0000 @@ -20,6 +20,38 @@ #define TIMER_MASK (OFF_TIMER | FREE_TIMER) @@ -164,44 +164,38 @@ { REGION_COPY(pScrn->pScreen, &pPriv->clip, clipBoxes); /* draw these */ -diff -Naurd xc.orig/programs/Xserver/hw/xfree86/drivers/nv/nv_video.c xc/programs/Xserver/hw/xfree86/drivers/nv/nv_video.c ---- xc.orig/programs/Xserver/hw/xfree86/drivers/nv/nv_video.c 2004-09-15 08:19:03.000000000 +0000 -+++ xc/programs/Xserver/hw/xfree86/drivers/nv/nv_video.c 2004-09-15 08:23:27.000000000 +0000 -@@ -451,6 +451,41 @@ +diff -Naurd xc-old/programs/Xserver/hw/xfree86/drivers/nv/nv_video.c xc/programs/Xserver/hw/xfree86/drivers/nv/nv_video.c +--- xc-old/programs/Xserver/hw/xfree86/drivers/nv/nv_video.c 2004-09-20 11:09:00.000000000 +0000 ++++ xc/programs/Xserver/hw/xfree86/drivers/nv/nv_video.c 2004-09-20 11:10:14.000000000 +0000 +@@ -451,6 +451,35 @@ return adapt; } +/* + * RegionsEqual + */ -+static Bool RegionsEqual -+( -+ RegionPtr A, -+ RegionPtr B -+) ++static Bool RegionsEqual(reg1, reg2) ++ RegionPtr reg1; ++ RegionPtr reg2; +{ -+ int *dataA, *dataB; -+ int num; ++ int i, num; ++ BoxPtr rects1, rects2; + -+ num = REGION_NUM_RECTS(A); -+ if (num != REGION_NUM_RECTS(B)) -+ return FALSE; ++ if (reg1->extents.x1 != reg2->extents.x1) return FALSE; ++ if (reg1->extents.x2 != reg2->extents.x2) return FALSE; ++ if (reg1->extents.y1 != reg2->extents.y1) return FALSE; ++ if (reg1->extents.y2 != reg2->extents.y2) return FALSE; + -+ if ((A->extents.x1 != B->extents.x1) || -+ (A->extents.x2 != B->extents.x2) || -+ (A->extents.y1 != B->extents.y1) || -+ (A->extents.y2 != B->extents.y2)) -+ return FALSE; -+ -+ dataA = (int*)REGION_RECTS(A); -+ dataB = (int*)REGION_RECTS(B); -+ -+ while(num--) -+ { -+ if((dataA[0] != dataB[0]) || (dataA[1] != dataB[1])) -+ return FALSE; -+ dataA += 2; -+ dataB += 2; ++ num = REGION_NUM_RECTS(reg1); ++ if (num != REGION_NUM_RECTS(reg2)) return FALSE; ++ ++ rects1 = REGION_RECTS(reg1); ++ rects2 = REGION_RECTS(reg2); ++ for (i = 0; i != num; i++) { ++ if (rects1[i].x1 != rects2[i].x1) return FALSE; ++ if (rects1[i].x2 != rects2[i].x2) return FALSE; ++ if (rects1[i].y1 != rects2[i].y1) return FALSE; ++ if (rects1[i].y2 != rects2[i].y2) return FALSE; + } + return TRUE; +} @@ -209,7 +203,7 @@ static void NVPutOverlayImage ( ScrnInfoPtr pScrnInfo, -@@ -478,7 +513,7 @@ +@@ -478,7 +507,7 @@ /* paint the color key */ if(pPriv->autopaintColorKey && (pPriv->grabbedByV4L || @@ -218,9 +212,9 @@ { /* we always paint V4L's color key */ if(!pPriv->grabbedByV4L) -diff -Naurd xc.orig/programs/Xserver/hw/xfree86/drivers/trident/trident_video.c xc/programs/Xserver/hw/xfree86/drivers/trident/trident_video.c ---- xc.orig/programs/Xserver/hw/xfree86/drivers/trident/trident_video.c 2004-09-15 08:20:24.000000000 +0000 -+++ xc/programs/Xserver/hw/xfree86/drivers/trident/trident_video.c 2004-09-15 08:21:40.000000000 +0000 +diff -Naurd xc-old/programs/Xserver/hw/xfree86/drivers/trident/trident_video.c xc/programs/Xserver/hw/xfree86/drivers/trident/trident_video.c +--- xc-old/programs/Xserver/hw/xfree86/drivers/trident/trident_video.c 2004-09-20 11:09:01.000000000 +0000 ++++ xc/programs/Xserver/hw/xfree86/drivers/trident/trident_video.c 2004-09-20 11:10:14.000000000 +0000 @@ -407,6 +407,34 @@ return adapt; } @@ -265,9 +259,9 @@ /* update cliplist */ REGION_COPY(pScrn->pScreen, &pPriv->clip, clipBoxes); xf86XVFillKeyHelper(pScrn->pScreen, pPriv->colorKey, clipBoxes); -diff -Naurd xc.orig/programs/Xserver/include/regionstr.h xc/programs/Xserver/include/regionstr.h ---- xc.orig/programs/Xserver/include/regionstr.h 2004-09-15 08:20:24.000000000 +0000 -+++ xc/programs/Xserver/include/regionstr.h 2004-09-15 08:21:40.000000000 +0000 +diff -Naurd xc-old/programs/Xserver/include/regionstr.h xc/programs/Xserver/include/regionstr.h +--- xc-old/programs/Xserver/include/regionstr.h 2001-12-14 19:59:56.000000000 +0000 ++++ xc/programs/Xserver/include/regionstr.h 2004-09-20 11:10:14.000000000 +0000 @@ -285,10 +285,21 @@ #define REGION_EXTENTS(_pScreen, _pReg) \ &(_pReg)->extents