X Strike Force XFree86 SVN commit: r1038 - in branches/4.3.0/sid/debian: . patches
Author: branden
Date: 2004-02-16 01:53:30 -0500 (Mon, 16 Feb 2004)
New Revision: 1038
Modified:
branches/4.3.0/sid/debian/changelog
branches/4.3.0/sid/debian/patches/000_post430.diff
Log:
Grab fixes to upstream CVS xf-4_3-branch since last pull.
(xc/lib/font/fontfile/dirfile.c,
xc/lib/font/fontfile/encparse.c,
xc/lib/font/fontfile/fontfile.c):
1013. Some more font path checks.
Modified: branches/4.3.0/sid/debian/changelog
===================================================================
--- branches/4.3.0/sid/debian/changelog 2004-02-16 06:50:51 UTC (rev 1037)
+++ branches/4.3.0/sid/debian/changelog 2004-02-16 06:53:30 UTC (rev 1038)
@@ -216,8 +216,12 @@
1012. Fix font alias overrun.
+ (xc/config/cf/Imake.tmpl):
Make sure a default for HasShadowPasswd gets defined.
+ + (xc/lib/font/fontfile/dirfile.c,
+ xc/lib/font/fontfile/encparse.c,
+ xc/lib/font/fontfile/fontfile.c):
+ 1013. Some more font path checks.
- -- Branden Robinson <branden@debian.org> Mon, 9 Feb 2004 16:18:27 -0500
+ -- Branden Robinson <branden@debian.org> Mon, 16 Feb 2004 01:51:35 -0500
xfree86 (4.3.0-0pre1v5) experimental; urgency=low
Modified: branches/4.3.0/sid/debian/patches/000_post430.diff
===================================================================
--- branches/4.3.0/sid/debian/patches/000_post430.diff 2004-02-16 06:50:51 UTC (rev 1037)
+++ branches/4.3.0/sid/debian/patches/000_post430.diff 2004-02-16 06:53:30 UTC (rev 1038)
@@ -310,11 +310,16 @@
Remove extra files that shouldn't be there (Bang Jun-Young).
(xc/lib/font/fontfile/dirfile.c):
- Fix font alias overrun.
+ 1012. Fix font alias overrun.
(xc/config/cf/Imake.tmpl):
Make sure a default for HasShadowPasswd gets defined.
+(xc/lib/font/fontfile/dirfile.c,
+ xc/lib/font/fontfile/encparse.c,
+ xc/lib/font/fontfile/fontfile.c):
+ 1013. Some more font path checks.
+
Index: xc/config/cf/Imake.tmpl
===================================================================
RCS file: /cvs/xc/config/cf/Imake.tmpl,v
@@ -332,16 +337,16 @@
XCOMM ----------------------------------------------------------------------
/*
-@@ -449,6 +449,9 @@
- #endif
+@@ -450,6 +450,9 @@
#ifndef NoStrstr
#define NoStrstr NO
-+#endif
+ #endif
+#ifndef HasShadowPasswd
+#define HasShadowPasswd NO
- #endif
++#endif
/* byte-order defaults */
#ifndef ByteOrder
+ #if defined(VaxArchitecture)
Index: xc/config/cf/NetBSD.cf
===================================================================
RCS file: /cvs/xc/config/cf/NetBSD.cf,v
@@ -385,15 +390,15 @@
XCOMM
#ifndef OSName
-@@ -57,6 +57,8 @@
- #endif
+@@ -58,6 +58,8 @@
#define HasUsableFileMmap YES
#define HasShadowPasswd NO
+
++#define HasArc4Random YES
+
-+#define HasArc4Random YES
-
#define HasNCurses YES
#define NCursesLibName -lcurses
+ #if defined(TermcapLibrary)
Index: xc/config/cf/X11.tmpl
===================================================================
RCS file: /cvs/xc/config/cf/X11.tmpl,v
@@ -522,20 +527,20 @@
#ifndef LinuxElfDefault
# define LinuxElfDefault YES
-@@ -418,13 +418,6 @@
- # else
- # define Has3DNowSupport NO
- # endif
--#endif
--
--/*
+@@ -421,13 +421,6 @@
+ #endif
+
+ /*
- * libGLU doesn't build correctly on a libc5 system.
- */
-#if !defined(BuildGLULibrary) && (LinuxCLibMajorVersion < 6)
-# define BuildGLULibrary NO
- #endif
-
- /*
+-#endif
+-
+-/*
+ * The Rush extension support.
+ */
+ #ifndef BuildXF86RushExt
Index: xc/config/cf/sun.cf
===================================================================
RCS file: /cvs/xc/config/cf/sun.cf,v
@@ -596,12 +601,10 @@
#else
#define XFree86ManVersionString `echo XF86_VERSION_MAJOR XF86_VERSION_MINOR XF86_VERSION_PATCH XF86_VERSION_SNAP | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
# endif
-@@ -2001,15 +2001,6 @@
- # else
- # define Egcs112Bug NO
+@@ -2003,15 +2003,6 @@
# endif
--#endif
--
+ #endif
+
-/*
- * Some Linux distributions (like RH 7.0) use glibc 2.1-style setjmp,
- * but have the glibc version set to 2.2. This can be set it host.def
@@ -609,9 +612,11 @@
- */
-#ifndef HasGlibc21Sigsetjmp
-#define HasGlibc21Sigsetjmp NO
- #endif
-
+-#endif
+-
#ifdef i386Architecture
+ # ifndef HasX86Support
+ # define HasX86Support YES
Index: xc/extras/freetype2/src/base/ftmac.c
===================================================================
RCS file: /cvs/xc/extras/freetype2/src/base/ftmac.c,v
@@ -3684,17 +3689,17 @@
po[i] = (FSPropOffset *)
FSmalloc(pi[i]->num_offsets * sizeof(FSPropOffset));
if (!po[i]) {
-@@ -281,6 +290,10 @@
-
+@@ -282,6 +291,10 @@
nbytes = pi[i]->data_len + reply.nameLength;
_FSEatData(svr, (unsigned long) (((nbytes+3)&~3) - nbytes));
-+ }
+ }
+ /* avoid integer overflow */
+ if (i > INT_MAX - 1) {
+ goto badmem;
- }
++ }
}
*info = fhdr;
+ *count = i;
Index: xc/lib/FS/FSFtNames.c
===================================================================
RCS file: /cvs/xc/lib/FS/FSFtNames.c,v
@@ -3912,16 +3917,16 @@
ext = (FSXCharInfo *) FSmalloc(sizeof(FSXCharInfo) * reply.num_extents);
*extents = ext;
-@@ -147,6 +150,9 @@
- if (!_FSReply(svr, (fsReply *) & reply,
- (SIZEOF(fsQueryXExtents16Reply) - SIZEOF(fsGenericReply)) >> 2,
+@@ -149,6 +152,9 @@
fsFalse))
+ return FSBadAlloc;
+
++ if (reply.num_extents > SIZE_MAX/sizeof(FSXCharInfo))
+ return FSBadAlloc;
+
-+ if (reply.num_extents > SIZE_MAX/sizeof(FSXCharInfo))
- return FSBadAlloc;
-
ext = (FSXCharInfo *) FSmalloc(sizeof(FSXCharInfo) * reply.num_extents);
+ *extents = ext;
+ if (!ext)
Index: xc/lib/FS/FSQXInfo.c
===================================================================
RCS file: /cvs/xc/lib/FS/FSQXInfo.c,v
@@ -3974,20 +3979,20 @@
/*
* FSlib networking & os include file
-@@ -75,6 +75,13 @@
- #include <limits.h>
+@@ -76,6 +76,13 @@
#undef _POSIX_SOURCE
#endif
-+#endif
+ #endif
+#ifndef SIZE_MAX
+# ifdef ULONG_MAX
+# define SIZE_MAX ULONG_MAX
+# else
+# define SIZE_MAX UINT_MAX
+# endif
- #endif
++#endif
#ifndef OPEN_MAX
#ifdef SVR4
+ #define OPEN_MAX 256
Index: xc/lib/GL/mesa/src/drv/i830/Imakefile
===================================================================
RCS file: /cvs/xc/lib/GL/mesa/src/drv/i830/Imakefile,v
@@ -4002,11 +4007,10 @@
#include <Threads.tmpl>
-@@ -74,4 +74,16 @@
- #endif
+@@ -75,3 +75,15 @@
DependTarget()
-+
+
+InstallDriverSDKNonExecFile(Imakefile,$(DRIVERSDKDIR)/lib/GL/mesa/src/drv/i830)
+InstallDriverSDKNonExecFile(i830_3d_reg.h,$(DRIVERSDKDIR)/lib/GL/mesa/src/drv/i830)
+InstallDriverSDKNonExecFile(i830_context.h,$(DRIVERSDKDIR)/lib/GL/mesa/src/drv/i830)
@@ -4018,7 +4022,7 @@
+InstallDriverSDKNonExecFile(i830_tex.h,$(DRIVERSDKDIR)/lib/GL/mesa/src/drv/i830)
+InstallDriverSDKNonExecFile(i830_tris.h,$(DRIVERSDKDIR)/lib/GL/mesa/src/drv/i830)
+InstallDriverSDKNonExecFile(i830_vb.h,$(DRIVERSDKDIR)/lib/GL/mesa/src/drv/i830)
-
++
Index: xc/lib/GL/mesa/src/drv/i830/i830_tex.c
===================================================================
RCS file: /cvs/xc/lib/GL/mesa/src/drv/i830/i830_tex.c,v
@@ -4094,11 +4098,10 @@
#include "tnl/t_pipeline.h"
#include "r200_context.h"
-@@ -1222,6 +1223,14 @@
- r200ChooseVertexState( ctx );
+@@ -1223,6 +1224,14 @@
}
-+
+
+void r200FlushVertices( GLcontext *ctx, GLuint flags )
+{
+ _tnl_flush_vertices( ctx, flags );
@@ -4106,9 +4109,10 @@
+ if (flags & FLUSH_STORED_VERTICES)
+ R200_FIREVERTICES( R200_CONTEXT( ctx ) );
+}
-
++
/**********************************************************************/
/* Initialization. */
+ /**********************************************************************/
Index: xc/lib/GL/mesa/src/drv/r200/r200_swtcl.h
===================================================================
RCS file: /cvs/xc/lib/GL/mesa/src/drv/r200/r200_swtcl.h,v
@@ -4255,11 +4259,10 @@
#include "tnl/t_pipeline.h"
#include "radeon_context.h"
-@@ -1133,6 +1134,14 @@
- }
+@@ -1134,6 +1135,14 @@
}
-+
+
+void radeonFlushVertices( GLcontext *ctx, GLuint flags )
+{
+ _tnl_flush_vertices( ctx, flags );
@@ -4267,9 +4270,10 @@
+ if (flags & FLUSH_STORED_VERTICES)
+ RADEON_FIREVERTICES( RADEON_CONTEXT( ctx ) );
+}
-
++
/**********************************************************************/
/* Initialization. */
+ /**********************************************************************/
Index: xc/lib/GL/mesa/src/drv/radeon/radeon_swtcl.h
===================================================================
RCS file: /cvs/xc/lib/GL/mesa/src/drv/radeon/radeon_swtcl.h,v
@@ -4683,6 +4687,7 @@
-#define _POSIX_SOURCE
-#include <limits.h>
-#undef _POSIX_SOURCE
+-#endif
+# ifdef _POSIX_SOURCE
+# include <limits.h>
+# else
@@ -4690,7 +4695,7 @@
+# include <limits.h>
+# undef _POSIX_SOURCE
+# endif
- #endif
++#endif
+#ifndef SIZE_MAX
+# ifdef ULONG_MAX
+# define SIZE_MAX ULONG_MAX
@@ -4704,20 +4709,63 @@
===================================================================
RCS file: /cvs/xc/lib/font/fontfile/dirfile.c,v
retrieving revision 3.15
-retrieving revision 3.15.2.1
-diff -u -r3.15 -r3.15.2.1
+retrieving revision 3.15.2.2
+diff -u -r3.15 -r3.15.2.2
--- xc/lib/font/fontfile/dirfile.c 31 May 2002 18:45:50 -0000 3.15
-+++ xc/lib/font/fontfile/dirfile.c 8 Feb 2004 17:02:29 -0000 3.15.2.1
++++ xc/lib/font/fontfile/dirfile.c 12 Feb 2004 03:21:49 -0000 3.15.2.2
@@ -25,7 +25,7 @@
in this Software without prior written authorization from The Open Group.
*/
-/* $XFree86: xc/lib/font/fontfile/dirfile.c,v 3.15 2002/05/31 18:45:50 dawes Exp $ */
-+/* $XFree86: xc/lib/font/fontfile/dirfile.c,v 3.15.2.1 2004/02/08 17:02:29 dawes Exp $ */
++/* $XFree86: xc/lib/font/fontfile/dirfile.c,v 3.15.2.2 2004/02/12 03:21:49 dawes Exp $ */
/*
* Author: Keith Packard, MIT X Consortium
-@@ -286,6 +286,10 @@
+@@ -68,6 +68,9 @@
+
+ FontDirectoryPtr dir = NullFontDirectory;
+
++ if (strlen(directory) + 1 + sizeof(FontDirFile) > sizeof(dir_file))
++ return BadFontPath;
++
+ #ifdef FONTDIRATTRIB
+ /* Check for font directory attributes */
+ #ifndef __UNIXOS2__
+@@ -154,6 +157,9 @@
+ char dir_file[MAXFONTFILENAMELEN];
+ struct stat statb;
+
++ if (strlen(dir->directory) + sizeof(FontDirFile) > sizeof(dir_file))
++ return FALSE;
++
+ strcpy (dir_file, dir->directory);
+ strcat (dir_file, FontDirFile);
+ if (stat (dir_file, &statb) == -1)
+@@ -202,6 +208,8 @@
+ continue;
+
+ len = strlen (fileName) - renderer->fileSuffixLen;
++ if (len >= sizeof(copy))
++ continue;
+ CopyISOLatin1Lowered (copy, fileName, len);
+ copy[len] = '\0';
+ name.name = copy;
+@@ -251,9 +259,13 @@
+ int status = Successful;
+ struct stat statb;
+
++ if (strlen(directory) >= sizeof(alias_file))
++ return BadFontPath;
+ dir = *pdir;
+ strcpy(alias_file, directory);
+ if (!isFile) {
++ if (strlen(directory) + 1 + sizeof(FontAliasFile) > sizeof(alias_file))
++ return BadFontPath;
+ if (directory[strlen(directory) - 1] != '/')
+ strcat(alias_file, "/");
+ strcat(alias_file, FontAliasFile);
+@@ -286,6 +298,10 @@
status = AllocError;
break;
case NAME:
@@ -4728,6 +4776,56 @@
strcpy(alias, lexToken);
token = lexAlias(file, &lexToken);
switch (token) {
+@@ -302,6 +318,10 @@
+ status = AllocError;
+ break;
+ case NAME:
++ if (strlen(lexToken) >= sizeof(font_name)) {
++ status = BadFontPath;
++ break;
++ }
+ CopyISOLatin1Lowered(alias, alias, strlen(alias));
+ CopyISOLatin1Lowered(font_name, lexToken, strlen(lexToken));
+ if (!FontFileAddFontAlias (dir, alias, font_name))
+Index: xc/lib/font/fontfile/encparse.c
+===================================================================
+RCS file: /cvs/xc/lib/font/fontfile/encparse.c,v
+retrieving revision 1.18
+retrieving revision 1.18.6.1
+diff -u -r1.18 -r1.18.6.1
+--- xc/lib/font/fontfile/encparse.c 2 Nov 2001 03:06:40 -0000 1.18
++++ xc/lib/font/fontfile/encparse.c 12 Feb 2004 03:21:49 -0000 1.18.6.1
+@@ -20,7 +20,7 @@
+ THE SOFTWARE.
+ */
+
+-/* $XFree86: xc/lib/font/fontfile/encparse.c,v 1.18 2001/11/02 03:06:40 dawes Exp $ */
++/* $XFree86: xc/lib/font/fontfile/encparse.c,v 1.18.6.1 2004/02/12 03:21:49 dawes Exp $ */
+
+ /* Parser for encoding files */
+
+@@ -833,6 +833,7 @@
+ char file_name[MAXFONTFILENAMELEN], encoding_name[MAXFONTNAMELEN],
+ buf[MAXFONTFILENAMELEN];
+ int count, n;
++ static char format[24] = "";
+
+ /* As we don't really expect to open encodings that often, we don't
+ take the trouble of caching encodings directories. */
+@@ -848,8 +849,12 @@
+ }
+
+ encoding = NULL;
++ if (!format[0]) {
++ sprintf(format, "%%%ds %%%d[^\n]\n", sizeof(encoding_name) - 1,
++ sizeof(file_name) - 1);
++ }
+ for(;;) {
+- count = fscanf(file, "%s %[^\n]\n", encoding_name, file_name);
++ count = fscanf(file, format, encoding_name, file_name);
+ if(count == EOF)
+ break;
+ if(count != 2)
Index: xc/lib/font/fontfile/fontdir.c
===================================================================
RCS file: /cvs/xc/lib/font/fontfile/fontdir.c,v
@@ -4779,6 +4877,100 @@
}
}
}
+Index: xc/lib/font/fontfile/fontfile.c
+===================================================================
+RCS file: /cvs/xc/lib/font/fontfile/fontfile.c,v
+retrieving revision 3.16
+retrieving revision 3.16.2.1
+diff -u -r3.16 -r3.16.2.1
+--- xc/lib/font/fontfile/fontfile.c 31 May 2002 18:45:50 -0000 3.16
++++ xc/lib/font/fontfile/fontfile.c 12 Feb 2004 03:21:49 -0000 3.16.2.1
+@@ -25,7 +25,7 @@
+ in this Software without prior written authorization from The Open Group.
+
+ */
+-/* $XFree86: xc/lib/font/fontfile/fontfile.c,v 3.16 2002/05/31 18:45:50 dawes Exp $ */
++/* $XFree86: xc/lib/font/fontfile/fontfile.c,v 3.16.2.1 2004/02/12 03:21:49 dawes Exp $ */
+
+ /*
+ * Author: Keith Packard, MIT X Consortium
+@@ -424,11 +424,16 @@
+ vals.ranges = ranges;
+ vals.nranges = nranges;
+
+- strcpy (fileName, dir->directory);
+- strcat (fileName, scalable->fileName);
+- ret = (*scalable->renderer->OpenScalable) (fpe, pFont,
++ if (strlen(dir->directory) + strlen(scalable->fileName) >=
++ sizeof(fileName)) {
++ ret = BadFontName;
++ } else {
++ strcpy (fileName, dir->directory);
++ strcat (fileName, scalable->fileName);
++ ret = (*scalable->renderer->OpenScalable) (fpe, pFont,
+ flags, entry, fileName, &vals, format, fmask,
+ non_cachable_font);
++ }
+
+ /* In case rasterizer does something bad because of
+ charset subsetting... */
+@@ -497,6 +502,8 @@
+
+ dir = (FontDirectoryPtr) fpe->private;
+ bitmap = &entry->u.bitmap;
++ if (strlen(dir->directory) + strlen(bitmap->fileName) >= sizeof(fileName))
++ return BadFontName;
+ strcpy (fileName, dir->directory);
+ strcat (fileName, bitmap->fileName);
+ ret = (*bitmap->renderer->OpenBitmap)
+@@ -530,6 +537,8 @@
+
+ dir = (FontDirectoryPtr) fpe->private;
+ bitmap = &entry->u.bitmap;
++ if (strlen(dir->directory) + strlen(bitmap->fileName) >= sizeof(fileName))
++ return BadFontName;
+ strcpy (fileName, dir->directory);
+ strcat (fileName, bitmap->fileName);
+ ret = (*bitmap->renderer->GetInfoBitmap) (fpe, pFontInfo, entry, fileName);
+@@ -891,10 +900,15 @@
+ vals.ranges = FontParseRanges(origName, &vals.nranges);
+ ranges = vals.ranges;
+ /* Make a new scaled instance */
+- strcpy (fileName, dir->directory);
+- strcat (fileName, scalable->fileName);
+- ret = (*scalable->renderer->GetInfoScalable)
+- (fpe, *pFontInfo, entry, &tmpName, fileName, &vals);
++ if (strlen(dir->directory) + strlen(scalable->fileName) >=
++ sizeof(fileName)) {
++ ret = BadFontName;
++ } else {
++ strcpy (fileName, dir->directory);
++ strcat (fileName, scalable->fileName);
++ ret = (*scalable->renderer->GetInfoScalable)
++ (fpe, *pFontInfo, entry, &tmpName, fileName, &vals);
++ }
+ if (ranges) xfree(ranges);
+ }
+ }
+@@ -931,10 +945,15 @@
+ bc = &entry->u.bc;
+ entry = bc->entry;
+ /* Make a new scaled instance */
+- strcpy (fileName, dir->directory);
+- strcat (fileName, scalable->fileName);
+- ret = (*scalable->renderer->GetInfoScalable)
++ if (strlen(dir->directory) + strlen(scalable->fileName) >=
++ sizeof(fileName)) {
++ ret = BadFontName;
++ } else {
++ strcpy (fileName, dir->directory);
++ strcat (fileName, scalable->fileName);
++ ret = (*scalable->renderer->GetInfoScalable)
+ (fpe, *pFontInfo, entry, tmpName, fileName, &bc->vals);
++ }
+ break;
+ #endif
+ default:
Index: xc/lib/freetype2/Imakefile
===================================================================
RCS file: /cvs/xc/lib/freetype2/Imakefile,v
@@ -5494,12 +5686,13 @@
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/CHANGELOG,v
retrieving revision 3.2588
-retrieving revision 3.2588.2.35
-diff -u -r3.2588 -r3.2588.2.35
+retrieving revision 3.2588.2.36
+diff -u -r3.2588 -r3.2588.2.36
--- xc/programs/Xserver/hw/xfree86/CHANGELOG 27 Feb 2003 04:56:44 -0000 3.2588
-+++ xc/programs/Xserver/hw/xfree86/CHANGELOG 8 Feb 2004 17:02:29 -0000 3.2588.2.35
-@@ -1,3 +1,109 @@
-+XFree86 4.3.0.2 (xx Xxxxx 200x)
++++ xc/programs/Xserver/hw/xfree86/CHANGELOG 12 Feb 2004 03:21:50 -0000 3.2588.2.36
+@@ -1,3 +1,110 @@
++XFree86 4.3.0.2 (xx February 2004)
++1013. Some more font path checks.
+1012. Fix font alias overrun.
+1011. Build fix for the i810 driver when XF86DRI isn't defined (#6006,
+ Matthias Scheler).
@@ -5608,12 +5801,12 @@
XFree86 4.3.0 (27 February 2003)
964. Add an imake option to allow the glibc21-style setjmp() behaviour
to be forced when auto-detecting it fails (this is needed for RH 7.0).
-@@ -16536,4 +16642,9 @@
+@@ -16536,4 +16643,9 @@
XFree86 3.0 (26 April 1994)
-$XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.2588 2003/02/27 04:56:44 dawes Exp $
-+$XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.2588.2.35 2004/02/08 17:02:29 dawes Exp $
++$XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.2588.2.36 2004/02/12 03:21:50 dawes Exp $
+
+
+
@@ -5881,11 +6074,10 @@
</ident>
<sect>XFree86 License
-@@ -176,6 +176,66 @@
- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+@@ -177,6 +177,66 @@
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
-+
+
+<sect2>Theodore Ts'o.
+<p>
+Copyright Theodore Ts'o, 1994, 1995, 1996, 1997, 1998, 1999. All
@@ -5945,9 +6137,10 @@
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
++
<sect1>NVIDIA Corp
<p>
+ Copyright (c) 1996 NVIDIA, Corp. All rights reserved.
Index: xc/programs/Xserver/hw/xfree86/drivers/ati/Imakefile
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/ati/Imakefile,v
@@ -6045,7 +6238,7 @@
/*
* Copyright 2000 ATI Technologies Inc., Markham, Ontario, and
* VA Linux Systems Inc., Fremont, California.
-@@ -5691,12 +5691,12 @@
+@@ -5691,13 +5691,13 @@
pSAREAPriv = DRIGetSAREAPrivate(pScrn->pScreen);
@@ -6055,13 +6248,14 @@
-
if (clone || info->IsSecondary) {
pSAREAPriv->crtc2_base = Base;
-+ }
+ }
+
+ if (pSAREAPriv->pfCurrentPage == 1) {
+ Base += info->backOffset;
- }
++ }
}
#endif
+
Index: xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_reg.h
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_reg.h,v
@@ -6124,17 +6318,17 @@
#include "xf86.h"
#include "xf86_OSproc.h"
-@@ -745,6 +745,10 @@
- x2 = drw_w - (dstBox->x2 - dstBox->x1);
+@@ -746,6 +746,10 @@
drw_w = (dstBox->x2 - dstBox->x1);
}
-+
+
+ /* Avoid divide by zero in compute_scale_factor. */
+ if (drw_w < 8)
+ return;
-
++
/* Let's adjust the width of source and dest to be compliant with
* the Permedia3 overlay unit requirement, and compute the X deltas. */
+ newx1 = src_w; newx2 = drw_w;
Index: xc/programs/Xserver/hw/xfree86/drivers/i740/Imakefile
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i740/Imakefile,v
@@ -6433,16 +6627,16 @@
* Keith Whitwell <keith@tungstengraphics.com>
*/
-@@ -822,6 +822,9 @@
- {
+@@ -823,6 +823,9 @@
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
I830Ptr pI830 = I830PTR(pScrn);
-+
+
+ if (!pScrn->vtSema)
+ return;
-
++
if (syncType == DRI_3D_SYNC &&
oldContextType == DRI_2D_CONTEXT && newContextType == DRI_2D_CONTEXT) {
+ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
Index: xc/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.h
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_dri.h,v
@@ -7004,14 +7198,14 @@
VGAOUT8(vgaCRIndex, 0x90);
VGAOUT8(vgaCRReg, restore->CR90);
VGAOUT8(vgaCRIndex, 0x91);
-@@ -2267,7 +2267,6 @@
- VGAOUT8(vgaCRReg, restore->CR3A);
+@@ -2268,7 +2268,6 @@
else
VGAOUT8(vgaCRReg, cr3a);
+
-
-
if (xf86GetVerbosity() > 1) {
xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, VERBLEV,
+ "ViRGE driver: done restoring mode, dumping CR registers:\n");
Index: xc/programs/Xserver/hw/xfree86/drivers/savage/savage_driver.c
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/savage/savage_driver.c,v
@@ -7026,7 +7220,7 @@
/*
* vim: sw=4 ts=8 ai ic:
*
-@@ -2090,8 +2090,18 @@
+@@ -2090,9 +2090,19 @@
VGAOUT8(vgaCRIndex, 0x3a);
VGAOUT8(vgaCRReg, cr3a);
@@ -7038,14 +7232,15 @@
+ */
+ SavageInitialize2DEngine(pScrn);
SavageSetGBD(pScrn);
-+
+
+ VGAOUT16(vgaCRIndex, 0x0140);
+
+ SavageSetGBD(pScrn);
+ }
-
++
vgaHWProtect(pScrn, FALSE);
+ return;
Index: xc/programs/Xserver/hw/xfree86/drivers/siliconmotion/smi_driver.c
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/drivers/siliconmotion/smi_driver.c,v
@@ -7763,15 +7958,15 @@
/*
* Copyright 1998 by Concurrent Computer Corporation
*
-@@ -96,8 +96,6 @@
- #else
+@@ -97,8 +97,6 @@
# define MAX_PCI_BUSES 256 /* Max number of PCI buses */
#endif
+
+-#define PCI_NOT_FOUND 0xffffffff
-
--#define PCI_NOT_FOUND 0xffffffff
-
#define DEVID(vendor, device) \
((CARD32)((PCI_CHIP_##device << 16) | PCI_VENDOR_##vendor))
+
Index: xc/programs/Xserver/hw/xfree86/os-support/bus/xf86Pci.h
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/os-support/bus/xf86Pci.h,v
@@ -7786,15 +7981,15 @@
/*
* Copyright 1998 by Concurrent Computer Corporation
*
-@@ -80,6 +80,8 @@
- #include "Xarch.h"
+@@ -81,6 +81,8 @@
#include "Xfuncproto.h"
#include "misc.h"
+
++#define PCI_NOT_FOUND 0xFFFFFFFFU
+
-+#define PCI_NOT_FOUND 0xFFFFFFFFU
-
/*
* PCI cfg space definitions (e.g. stuff right out of the PCI spec)
+ */
Index: xc/programs/Xserver/hw/xfree86/os-support/shared/libc_wrapper.c
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/os-support/shared/libc_wrapper.c,v
@@ -7970,20 +8165,20 @@
256x256 -
1) Don't take up more than a quarter of the memory enless there
-@@ -785,6 +786,13 @@
- if(!Target512) Target256 = ntotal >> 3;
+@@ -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) {
Index: xc/programs/Xserver/hw/xfree86/xf86cfg/Imakefile
===================================================================
RCS file: /cvs/xc/programs/Xserver/hw/xfree86/xf86cfg/Imakefile,v
@@ -8800,17 +8995,17 @@
SpecialCObjectRule(policy,$(ICONFIGFILES),$(_NOOP_))
SpecialCObjectRule(resource,$(ICONFIGFILES),$(RES_DEFINES))
SpecialCObjectRule(socket,$(ICONFIGFILES),$(SOCK_DEFINES))
-@@ -305,10 +330,6 @@
- ObjectFromSpecialSource(sessionsh,session,-DUSESHADOW)
+@@ -306,10 +331,6 @@
#endif
#endif /* !SharedLibXdmGreet */
--
+
-#if !HasSnprintf
-LinkSourceFile(snprintf.c,$(LIBSRC)/misc)
-#endif
-
+-
#ifdef IHaveSubdirs
MakeSubdirs($(SUBDIRS))
+ DependSubdirs($(SUBDIRS))
Index: xc/programs/xdm/access.c
===================================================================
RCS file: /cvs/xc/programs/xdm/access.c,v
@@ -9071,11 +9266,10 @@
continue;
case DISPLAY_PATTERN:
if (!clientName)
-@@ -758,5 +817,33 @@
- return (d != 0) && (d->notAllowed == 0)
+@@ -759,4 +818,32 @@
&& (type == BROADCAST_QUERY ? d->notBroadcast == 0 : 1);
}
-+
+
+void ForEachListenAddr (
+ ListenFunc listenfunction,
+ ListenFunc mcastfunction,
@@ -9103,7 +9297,7 @@
+ }
+}
+
-
++
#endif /* XDMCP */
Index: xc/programs/xdm/auth.c
===================================================================
@@ -9678,18 +9872,18 @@
/*
* CloseOnFork flags
-@@ -495,6 +523,11 @@
- #define Setjmp(e) sigsetjmp(e,1)
- #define Longjmp(e,v) siglongjmp(e,v)
+@@ -497,6 +525,11 @@
#define Jmp_buf sigjmp_buf
-+#endif
-+
+ #endif
+
+#ifndef HAS_SNPRINTF
+#include <X11/Xmu/SysUtil.h>
+#define snprintf XmuSnprintf
- #endif
++#endif
++
+ typedef SIGVAL (*SIGFUNC)(int);
- typedef SIGVAL (*SIGFUNC)(int);
+ SIGVAL (*Signal(int, SIGFUNC Handler))(int);
Index: xc/programs/xdm/dm_auth.h
===================================================================
RCS file: /cvs/xc/programs/xdm/dm_auth.h,v
@@ -11763,12 +11957,10 @@
/*
* xdm - display manager daemon
-@@ -144,6 +144,25 @@
- }
- *lenp = nbuf.len;
+@@ -146,5 +146,24 @@
return retval;
-+}
-+
+ }
+
+/* TODO: Implement support for controlling which interfaces are listened on
+ and for listening to multicast addresses. See the sockets equivalent in
+ sockets.c for details. */
@@ -11786,9 +11978,10 @@
+void ProcessListenSockets (fd_set *readmask)
+{
+ return;
- }
-
++}
++
#endif /* STREAMSCONN */
+ #endif /* XDMCP */
Index: xc/programs/xdm/xdm.man
===================================================================
RCS file: /cvs/xc/programs/xdm/xdm.man,v
Reply to: