SOURCES: xorg-xserver-server-bug-12528.patch (NEW), xorg-xserver-s...

arekm arekm at pld-linux.org
Sun Oct 21 23:28:42 CEST 2007


Author: arekm                        Date: Sun Oct 21 21:28:42 2007 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- some fixes (from debian; freedesktop)

---- Files affected:
SOURCES:
   xorg-xserver-server-bug-12528.patch (NONE -> 1.1)  (NEW), xorg-xserver-server-bug-8080.patch (NONE -> 1.1)  (NEW), xorg-xserver-server-exa.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/xorg-xserver-server-bug-12528.patch
diff -u /dev/null SOURCES/xorg-xserver-server-bug-12528.patch:1.1
--- /dev/null	Sun Oct 21 23:28:42 2007
+++ SOURCES/xorg-xserver-server-bug-12528.patch	Sun Oct 21 23:28:37 2007
@@ -0,0 +1,36 @@
+--- xorg-server-1.4.orig/debian/patches/45_GetKeyboardEvents_reject_out-of-range_keycodes.diff
++++ xorg-server-1.4/debian/patches/45_GetKeyboardEvents_reject_out-of-range_keycodes.diff
+@@ -0,0 +1,33 @@
++From: Daniel Stone <daniel at fooishbar.org>
++Date: Sun, 23 Sep 2007 09:43:31 +0000 (+0300)
++Subject: GetKeyboardEvents: Reject out-of-range keycodes (bug #12528)
++X-Git-Url: http://gitweb.freedesktop.org/?p=xorg/xserver.git;a=commitdiff;h=0e800ca4651a947ccef239e6fe7bf64aab92257c
++
++GetKeyboardEvents: Reject out-of-range keycodes (bug #12528)
++
++We can only deal with keycodes between 8 and 255, so make sure that we never
++accept anything out of this range.
++
++http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=443697
++---
++
++--- a/dix/getevents.c
+++++ b/dix/getevents.c
++@@ -402,6 +402,7 @@ GetKeyboardValuatorEvents(xEvent *events
++     if (!events)
++         return 0;
++ 
+++    /* DO NOT WANT */
++     if (type != KeyPress && type != KeyRelease)
++         return 0;
++ 
++@@ -409,6 +410,9 @@ GetKeyboardValuatorEvents(xEvent *events
++         (pDev->coreEvents && !inputInfo.keyboard->key))
++         return 0;
++ 
+++    if (key_code < 8 || key_code > 255)
+++        return 0;
+++
++     if (pDev->coreEvents)
++         numEvents = 2;
++     else

================================================================
Index: SOURCES/xorg-xserver-server-bug-8080.patch
diff -u /dev/null SOURCES/xorg-xserver-server-bug-8080.patch:1.1
--- /dev/null	Sun Oct 21 23:28:42 2007
+++ SOURCES/xorg-xserver-server-bug-8080.patch	Sun Oct 21 23:28:37 2007
@@ -0,0 +1,36 @@
+--- xorg-server-1.4.orig/debian/patches/12_bgPixel_fix_64bit_issue.diff
++++ xorg-server-1.4/debian/patches/12_bgPixel_fix_64bit_issue.diff
+@@ -0,0 +1,33 @@
++From 9adea807038b64292403ede982075fe1dcfd4c9a Mon Sep 17 00:00:00 2001
++From: Hong Liu <hong.liu at intel.com>
++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
++

================================================================
Index: SOURCES/xorg-xserver-server-exa.patch
diff -u /dev/null SOURCES/xorg-xserver-server-exa.patch:1.1
--- /dev/null	Sun Oct 21 23:28:42 2007
+++ SOURCES/xorg-xserver-server-exa.patch	Sun Oct 21 23:28:37 2007
@@ -0,0 +1,58 @@
+--- xorg-server-1.4.orig/debian/patches/08_exa_fix_exaFillRegionTiled_fallback.diff
++++ xorg-server-1.4/debian/patches/08_exa_fix_exaFillRegionTiled_fallback.diff
+@@ -0,0 +1,20 @@
++commit aa11204d4a81de851155ae3f01d4c897263fd7b0
++Author: Michel Dänzer <michel at tungstengraphics.com>
++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),
+--- xorg-server-1.4.orig/debian/patches/11_exa_no_negative_tile_offsets.diff
++++ xorg-server-1.4/debian/patches/11_exa_no_negative_tile_offsets.diff
+@@ -0,0 +1,32 @@
++commit e1ac9c0e7a6167f14cb7899e585eeae74bb5d55d
++Author: Michel Dänzer <michel at tungstengraphics.com>
++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)
================================================================


More information about the pld-cvs-commit mailing list