Xext/xcmisc.c | 13 +++++++++++-- configure.ac | 6 +++--- hw/xfree86/modes/xf86Crtc.c | 1 - os/WaitFor.c | 9 ++++++--- 4 files changed, 20 insertions(+), 9 deletions(-)
New commits: commit 970cacb264a597573e0927410dde5a3d3aa6549b Author: Keith Packard <[EMAIL PROTECTED]> Date: Thu Apr 5 23:48:40 2007 -0700 Bump to version 1.2.99.905 (1.3 RC5) diff --git a/configure.ac b/configure.ac index 2c69c30..360419c 100644 --- a/configure.ac +++ b/configure.ac @@ -25,7 +25,7 @@ dnl Process this file with autoconf to create configure. AC_PREREQ(2.57) dnl This is the not the Xorg version number, it's the server version number. dnl Yes, that's weird. -AC_INIT([xorg-server], 1.2.99.904, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) +AC_INIT([xorg-server], 1.2.99.905, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) AC_CONFIG_SRCDIR([Makefile.am]) AM_INIT_AUTOMAKE([dist-bzip2 foreign]) AM_MAINTAINER_MODE @@ -40,7 +40,7 @@ DEFAULT_VENDOR_NAME_SHORT="X.Org" DEFAULT_VERSION_MAJOR=1 DEFAULT_VERSION_MINOR=2 DEFAULT_VERSION_PATCH=99 -DEFAULT_VERSION_SNAP=904 +DEFAULT_VERSION_SNAP=905 DEFAULT_RELEASE_DATE="05 April 2007" DEFAULT_VENDOR_WEB="http://wiki.x.org" commit 44c4bd5df3aae191be9fc836be26f91497d02901 Author: Matthieu Herrb <[EMAIL PROTECTED](none)> Date: Tue Apr 3 15:47:18 2007 +0200 CVE-2007-1003: XC-MISC Extension ProcXCMiscGetXIDList() Memory Corruption (cherry picked from commit 645d87cf8ef724d4591614f9994cdc4d7549a7a8) diff --git a/Xext/xcmisc.c b/Xext/xcmisc.c index f26218e..8c7a86e 100644 --- a/Xext/xcmisc.c +++ b/Xext/xcmisc.c @@ -42,6 +42,12 @@ from The Open Group. #include <X11/extensions/xcmiscstr.h> #include "modinit.h" +#if HAVE_STDINT_H +#include <stdint.h> +#elif !defined(UINT32_MAX) +#define UINT32_MAX 0xffffffffU +#endif + #if 0 static unsigned char XCMiscCode; #endif @@ -143,7 +149,10 @@ ProcXCMiscGetXIDList(client) REQUEST_SIZE_MATCH(xXCMiscGetXIDListReq); - pids = (XID *)ALLOCATE_LOCAL(stuff->count * sizeof(XID)); + if (stuff->count > UINT32_MAX / sizeof(XID)) + return BadAlloc; + + pids = (XID *)Xalloc(stuff->count * sizeof(XID)); if (!pids) { return BadAlloc; @@ -164,7 +173,7 @@ ProcXCMiscGetXIDList(client) client->pSwapReplyFunc = (ReplySwapPtr) Swap32Write; WriteSwappedDataToClient(client, count * sizeof(XID), pids); } - DEALLOCATE_LOCAL(pids); + Xfree(pids); return(client->noClientException); } commit 44ea7a3e0d8fa636f4e5dd392caf618120d98413 Author: Tomas Janousek <[EMAIL PROTECTED]> Date: Wed Mar 28 14:46:30 2007 -0400 Bug #10296: Fix timer rescheduling. (cherry picked from commit 8c7f56d92d8471ee059c14d322af5f7f555dd5c6) diff --git a/os/WaitFor.c b/os/WaitFor.c index ba227a3..d0f9f62 100644 --- a/os/WaitFor.c +++ b/os/WaitFor.c @@ -125,7 +125,7 @@ struct _OsTimerRec { }; static void DoTimer(OsTimerPtr timer, CARD32 now, OsTimerPtr *prev); -static void CheckAllTimers(CARD32 now); +static void CheckAllTimers(void); static OsTimerPtr timers = NULL; /***************** @@ -204,7 +204,7 @@ WaitForSomething(int *pClientsReady) timeout = timers->expires - now; if (timeout > 0 && timeout > timers->delta + 250) { /* time has rewound. reset the timers. */ - CheckAllTimers(now); + CheckAllTimers(); } if (timers) { @@ -439,11 +439,14 @@ ANYSET(FdMask *src) /* If time has rewound, re-run every affected timer. * Timers might drop out of the list, so we have to restart every time. */ static void -CheckAllTimers(CARD32 now) +CheckAllTimers(void) { OsTimerPtr timer; + CARD32 now; start: + now = GetTimeInMillis(); + for (timer = timers; timer; timer = timer->next) { if (timer->expires - now > timer->delta + 250) { TimerForce(timer); commit 042ef1f573d6e98756cc98c296bddd1aa9e4c8ca Author: Keith Packard <[EMAIL PROTECTED]> Date: Thu Apr 5 23:21:19 2007 -0700 Bump version to 1.2.99.904 (1.3 RC4) diff --git a/configure.ac b/configure.ac index 6ba4d03..2c69c30 100644 --- a/configure.ac +++ b/configure.ac @@ -25,7 +25,7 @@ dnl Process this file with autoconf to create configure. AC_PREREQ(2.57) dnl This is the not the Xorg version number, it's the server version number. dnl Yes, that's weird. -AC_INIT([xorg-server], 1.2.99.903, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) +AC_INIT([xorg-server], 1.2.99.904, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) AC_CONFIG_SRCDIR([Makefile.am]) AM_INIT_AUTOMAKE([dist-bzip2 foreign]) AM_MAINTAINER_MODE @@ -40,8 +40,8 @@ DEFAULT_VENDOR_NAME_SHORT="X.Org" DEFAULT_VERSION_MAJOR=1 DEFAULT_VERSION_MINOR=2 DEFAULT_VERSION_PATCH=99 -DEFAULT_VERSION_SNAP=903 -DEFAULT_RELEASE_DATE="26 March 2007" +DEFAULT_VERSION_SNAP=904 +DEFAULT_RELEASE_DATE="05 April 2007" DEFAULT_VENDOR_WEB="http://wiki.x.org" dnl this gets generated by autoheader, and thus contains all the defines. we commit 56262a4ee943f328d089a8eb4aa70b9a4bd5d135 Author: Keith Packard <[EMAIL PROTECTED]> Date: Mon Apr 2 14:15:36 2007 -0700 Don't erase current crtc for outputs on CloseScreen Erasing this variable causes some outputs (SDVO on intel) to fail to be correctly reset at server reset time. diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c index 7d86b66..325fb64 100644 --- a/hw/xfree86/modes/xf86Crtc.c +++ b/hw/xfree86/modes/xf86Crtc.c @@ -589,7 +589,6 @@ xf86CrtcCloseScreen (int index, ScreenPtr screen) { xf86OutputPtr output = config->output[o]; - output->crtc = NULL; output->randr_output = NULL; } for (c = 0; c < config->num_crtc; c++) -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]