X Strike Force SVN commit: rev 503 - in trunk/debian: . patches
Author: branden
Date: 2003-09-10 15:27:31 -0500 (Wed, 10 Sep 2003)
New Revision: 503
Modified:
trunk/debian/changelog
trunk/debian/patches/000_stolen_from_HEAD.diff
Log:
debian/patches/000_stolen_from_HEAD.diff: fix an XAA pixmap cache server
crash that can happen in some cases when the off-screen memory is heavily
fragmented. (Closes: #208804)
Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog 2003-09-10 18:28:38 UTC (rev 502)
+++ trunk/debian/changelog 2003-09-10 20:27:31 UTC (rev 503)
@@ -94,8 +94,12 @@
* debian/xterm.{preinst,postinst}.in: migrate removal of obsolete old xterm
alternative to the package preinst script where it belongs
- -- Branden Robinson <branden@debian.org> Wed, 10 Sep 2003 07:10:14 -0500
+ * patch #000_stolen_from_HEAD:
+ + Fix an XAA pixmap cache server crash that can happen in some cases
+ when the off-screen memory is heavily fragmented. (Closes: #208804)
+ -- Branden Robinson <branden@debian.org> Wed, 10 Sep 2003 15:20:48 -0500
+
xfree86 (4.2.1-11) unstable; urgency=medium
* urgency set to medium because bug #206790 bites a lot of people (but,
Modified: trunk/debian/patches/000_stolen_from_HEAD.diff
===================================================================
--- trunk/debian/patches/000_stolen_from_HEAD.diff 2003-09-10 18:28:38 UTC (rev 502)
+++ trunk/debian/patches/000_stolen_from_HEAD.diff 2003-09-10 20:27:31 UTC (rev 503)
@@ -274,6 +274,11 @@
#646).
Backported from XFree86 CVS HEAD.
+(xc/programs/Xserver/hw/xfree86/xaa/xaaPCache.c):
+ 376. Fix an XAA pixmap cache server crash that can happen in some cases
+ when the off-screen memory is heavily fragmented (David Dawes, based on
+ #5752, Koike Kazuhiko, Chisato Yamauchi).
+
Index: xc/nls/XI18N_OBJS/Imakefile
===================================================================
RCS file: /cvs/xc/nls/XI18N_OBJS/Imakefile,v
@@ -5541,3 +5546,27 @@
#endif
#ifndef OPEN_MAX
#if defined(SVR4) || defined(__EMX__)
+--- xc/programs/Xserver/hw/xfree86/xaa/xaaPCache.c~ 2003-09-10 15:12:05.000000000 -0500
++++ xc/programs/Xserver/hw/xfree86/xaa/xaaPCache.c 2003-09-10 15:12:19.000000000 -0500
+@@ -763,6 +763,7 @@
+ 1) Don't take up more than half the memory.
+ 2) Don't bother if you can't get at least four.
+ 3) Don't make more than MAX_512.
++ 4) Don't have any of there are no 256x256s.
+
+ 256x256 -
+ 1) Don't take up more than a quarter of the memory enless there
+@@ -786,6 +787,13 @@
+ else Target256 = ntotal >> 4;
+ if(Target256 < 4) Target256 = 0;
+
++ if(Num512 && Num256 < 4) {
++ while(Num512 && Num256 < Target256) {
++ SubdivideList(&List512, &List256);
++ Num256 += 4; Num512--;
++ }
++ }
++
+ if(!Num512) { /* no room */
+ } else if((Num512 < 4) || (!Target512)) {
+ while(Num512) {
Reply to: