debian/changelog | 12 +++- debian/patches/08_exa_fix_exaFillRegionTiled_fallback.diff | 20 +++++++ debian/patches/11_exa_no_negative_tile_offsets.diff | 32 ++++++++++++ debian/patches/12_bgPixel_fix_64bit_issue.diff | 33 +++++++++++++ debian/patches/series | 3 + 5 files changed, 98 insertions(+), 2 deletions(-)
New commits: commit 531db0c0cef9d85d904168b610d7386eb41d2826 Author: Julien Cristau <[EMAIL PROTECTED]> Date: Sat Sep 29 15:51:02 2007 +0200 Add 3 backported patches from the upstream master branch. * Add 08_exa_fix_exaFillRegionTiled_fallback.diff by Michel Dänzer to punt on fallback case not handled correctly in exaFillRegionTiled (backported from master's c7d6d1f5). * Add 11_exa_no_negative_tile_offsets.diff by Michel Dänzer to make sure tile offsets passed to drivers are never negative (backported from master's 006f6525). * Add 12_bgPixel_fix_64bit_issue.diff by Hong Liu: bgPixel (unsigned long) is 64-bit on x86_64, so -1 != 0xffffffff (master's 9adea807). diff --git a/debian/changelog b/debian/changelog index 7da6907..23e5923 100644 --- a/debian/changelog +++ b/debian/changelog @@ -53,8 +53,16 @@ xorg-server (2:1.4-3) UNRELEASED; urgency=low debian/patches/series. * Don't build kdrive-based servers we're not shipping. * Use ${binary:Version} instead of ${Source-Version}. - - -- David Nusinow <[EMAIL PROTECTED]> Thu, 27 Sep 2007 22:21:10 -0400 + * Add 08_exa_fix_exaFillRegionTiled_fallback.diff by Michel Dänzer to punt + on fallback case not handled correctly in exaFillRegionTiled (backported + from master's c7d6d1f5). + * Add 11_exa_no_negative_tile_offsets.diff by Michel Dänzer to make sure + tile offsets passed to drivers are never negative (backported from + master's 006f6525). + * Add 12_bgPixel_fix_64bit_issue.diff by Hong Liu: bgPixel (unsigned long) + is 64-bit on x86_64, so -1 != 0xffffffff (master's 9adea807). + + -- Julien Cristau <[EMAIL PROTECTED]> Sat, 29 Sep 2007 15:42:08 +0200 xorg-server (2:1.4-2) unstable; urgency=low diff --git a/debian/patches/08_exa_fix_exaFillRegionTiled_fallback.diff b/debian/patches/08_exa_fix_exaFillRegionTiled_fallback.diff new file mode 100644 index 0000000..bca03a4 --- /dev/null +++ b/debian/patches/08_exa_fix_exaFillRegionTiled_fallback.diff @@ -0,0 +1,20 @@ +commit aa11204d4a81de851155ae3f01d4c897263fd7b0 +Author: Michel Dänzer <[EMAIL PROTECTED]> +Date: Tue Sep 25 19:51:29 2007 +0200 + + EXA: Punt on fallback case not handled correctly in exaFillRegionTiled. + +diff --git a/exa/exa_accel.c b/exa/exa_accel.c +index cc383cc..acc5dbe 100644 +--- a/exa/exa_accel.c ++++ b/exa/exa_accel.c +@@ -1223,7 +1223,8 @@ exaFillRegionTiled (DrawablePtr pDrawable, + } + + fallback: +- if (alu != GXcopy || planemask != FB_ALLONES) ++ if (alu != GXcopy || planemask != FB_ALLONES || pPatOrg->x != 0 || ++ pPatOrg->y != 0) + return FALSE; + EXA_FALLBACK(("from %p to %p (%c,%c)\n", pTile, pDrawable, + exaDrawableLocation(&pTile->drawable), diff --git a/debian/patches/11_exa_no_negative_tile_offsets.diff b/debian/patches/11_exa_no_negative_tile_offsets.diff new file mode 100644 index 0000000..056d8fc --- /dev/null +++ b/debian/patches/11_exa_no_negative_tile_offsets.diff @@ -0,0 +1,32 @@ +commit e1ac9c0e7a6167f14cb7899e585eeae74bb5d55d +Author: Michel Dänzer <[EMAIL PROTECTED]> +Date: Thu Sep 27 13:08:41 2007 +0200 + + EXA: Make sure tile offsets passed to drivers are never negative. + + Thanks to Björn Steinbrink for pointing out the problem on IRC. + +diff --git a/exa/exa_accel.c b/exa/exa_accel.c +index cc383cc..d19e3f4 100644 +--- a/exa/exa_accel.c ++++ b/exa/exa_accel.c +@@ -1187,7 +1187,8 @@ exaFillRegionTiled (DrawablePtr pDrawable, + int dstY = pBox->y1; + int tileY; + +- tileY = (dstY - pDrawable->y - pPatOrg->y) % tileHeight; ++ modulus(dstY - pDrawable->y - pPatOrg->y, tileHeight, tileY); ++ + while (height > 0) { + int width = pBox->x2 - pBox->x1; + int dstX = pBox->x1; +@@ -1198,7 +1199,8 @@ exaFillRegionTiled (DrawablePtr pDrawable, + h = height; + height -= h; + +- tileX = (dstX - pDrawable->x - pPatOrg->x) % tileWidth; ++ modulus(dstX - pDrawable->x - pPatOrg->x, tileWidth, tileX); ++ + while (width > 0) { + int w = tileWidth - tileX; + if (w > width) diff --git a/debian/patches/12_bgPixel_fix_64bit_issue.diff b/debian/patches/12_bgPixel_fix_64bit_issue.diff new file mode 100644 index 0000000..f80d4a4 --- /dev/null +++ b/debian/patches/12_bgPixel_fix_64bit_issue.diff @@ -0,0 +1,33 @@ +From 9adea807038b64292403ede982075fe1dcfd4c9a Mon Sep 17 00:00:00 2001 +From: Hong Liu <[EMAIL PROTECTED]> +Date: Tue, 4 Sep 2007 08:46:46 +0100 +Subject: [PATCH] bgPixel (unsigned long) is 64-bit on x86_64, so -1 != 0xffffffff + +This patch should fix bug 8080. +--- + hw/xfree86/xaa/xaaGC.c | 9 +++++---- + 1 files changed, 5 insertions(+), 4 deletions(-) + +diff --git a/hw/xfree86/xaa/xaaGC.c b/hw/xfree86/xaa/xaaGC.c +index f3434c9..b3dc83a 100644 +--- a/hw/xfree86/xaa/xaaGC.c ++++ b/hw/xfree86/xaa/xaaGC.c +@@ -80,10 +80,11 @@ XAAValidateGC( + } + + if(pGC->depth != 32) { +- if(pGC->bgPixel == -1) /* -1 is reserved for transparency */ +- pGC->bgPixel = 0x7fffffff; +- if(pGC->fgPixel == -1) /* -1 is reserved for transparency */ +- pGC->fgPixel = 0x7fffffff; ++ /* 0xffffffff is reserved for transparency */ ++ if(pGC->bgPixel == 0xffffffff) ++ pGC->bgPixel = 0x7fffffff; ++ if(pGC->fgPixel == 0xffffffff) ++ pGC->fgPixel = 0x7fffffff; + } + + if((pDraw->type == DRAWABLE_PIXMAP) && !IS_OFFSCREEN_PIXMAP(pDraw)){ +-- +1.5.3.2 + diff --git a/debian/patches/series b/debian/patches/series index 689e847..73f34fb 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -5,7 +5,10 @@ 05_kill_type1.diff 06_use_proc_instead_of_sysfs_for_pci_domains.diff 07_autoconfig_screen_with_device_section.diff +08_exa_fix_exaFillRegionTiled_fallback.diff 10_dont_look_in_home_for_config.diff -p0 +11_exa_no_negative_tile_offsets.diff +12_bgPixel_fix_64bit_issue.diff 13_debian_add_xkbpath_env_variable.diff 21_glx_align_fixes.patch 41_vbe_filter_less.diff -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]