[arch-commits] Commit in xorg-server/trunk (PKGBUILD server-1.6-branch.patch)

Jan de Groot jgc at archlinux.org
Sat Jul 18 15:54:18 UTC 2009


    Date: Saturday, July 18, 2009 @ 11:54:18
  Author: jgc
Revision: 46491

upgpkg: xorg-server 1.6.2-1
    Update to 1.6.2 and depend on mesa 7.5

Modified:
  xorg-server/trunk/PKGBUILD
  xorg-server/trunk/server-1.6-branch.patch

-------------------------+
 PKGBUILD                |   24 -
 server-1.6-branch.patch |  814 ++--------------------------------------------
 2 files changed, 64 insertions(+), 774 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2009-07-18 15:33:50 UTC (rev 46490)
+++ PKGBUILD	2009-07-18 15:54:18 UTC (rev 46491)
@@ -3,14 +3,14 @@
 # Contributor: Jan de Groot <jgc at archlinux.org>
 
 pkgname=xorg-server
-pkgver=1.6.1.901
-pkgrel=3
+pkgver=1.6.2
+pkgrel=1
 pkgdesc="X.Org X servers"
 arch=('i686' 'x86_64')
 license=('custom')
 url="http://xorg.freedesktop.org"
-depends=('hal>=0.5.11' 'libgl' 'libxfont>=1.4.0' 'openssl>=0.9.8j' 'libpciaccess>=0.10.5' 'libxv>=1.0.4' 'pixman>=0.14.0' 'xcursor-themes' 'xkeyboard-config>=1.6' 'xorg-server-utils' 'xorg-fonts-misc' 'xbitmaps' 'diffutils' 'xf86-input-evdev>=2.2.2')
-makedepends=('libx11>=1.2.1' 'mesa>=7.4.4' 'xf86driproto>=2.0.4' 'xtrans>=1.2.3' 'libxkbfile>=1.0.5' 'randrproto>=1.3.0' 'renderproto>=0.9.3' 'xcmiscproto>=1.1.2' 'bigreqsproto>=1.0.2' 'resourceproto>=1.0.2' 'videoproto>=2.2.2' 'compositeproto>=0.4' 'scrnsaverproto>=1.1.0' 'libxinerama>=1.0.3' 'xf86dgaproto>=2.0.3' 'recordproto>=1.13.2' 'libgl>=7.4.4' 'glproto>=1.4.9')
+depends=('hal>=0.5.11' 'libgl' 'libxfont>=1.4.0' 'openssl>=0.9.8k' 'libpciaccess>=0.10.6' 'libxv>=1.0.4' 'pixman>=0.14.0' 'xcursor-themes' 'xkeyboard-config>=1.6' 'xorg-server-utils' 'xorg-fonts-misc' 'xbitmaps' 'diffutils' 'xf86-input-evdev>=2.2.2')
+makedepends=('libx11>=1.2.1' 'mesa>=7.5' 'xf86driproto>=2.0.4' 'xtrans>=1.2.3' 'libxkbfile>=1.0.5' 'randrproto>=1.3.0' 'renderproto>=0.9.3' 'xcmiscproto>=1.1.2' 'bigreqsproto>=1.0.2' 'resourceproto>=1.0.2' 'videoproto>=2.2.2' 'compositeproto>=0.4' 'scrnsaverproto>=1.1.0' 'libxinerama>=1.0.3' 'xf86dgaproto>=2.0.3' 'recordproto>=1.13.2' 'libgl>=7.5' 'glproto>=1.4.9' 'xorg-util-macros')
 conflicts=('catalyst-utils<=9.2')
 options=('!libtool')
 provides=('x-server')
@@ -18,12 +18,10 @@
 install=xorg-server.install
 source=(${url}/releases/individual/xserver/${pkgname}-${pkgver}.tar.bz2
         xorg-redhat-die-ugly-pattern-die-die-die.patch
-        server-1.6-branch.patch
-      	pending-1.6.2.patch)
-md5sums=('e6cba1f07006143daa95ce3f11d999b2'
+        server-1.6-branch.patch)
+md5sums=('37641d0899df8a9c4a6284586d932b8d'
          '1a336eb22e27cbf443ec5a2ecddfa93c'
-         '4137ebc011080b0d7afa271376653ab7'
-         '06f41b42664b6dc9b56abdc0858901e4')
+         '811b6f4cda60ac5f94fd790415efb073')
 
 build() {
   cd "${srcdir}/${pkgname}-${pkgver}"
@@ -31,15 +29,15 @@
   patch -Np3 -i "${srcdir}/xorg-redhat-die-ugly-pattern-die-die-die.patch" || return 1
 
   # Upstream updates from server-1.6 branch
-  # DRI2 parts removed
   patch -Np1 -i "${srcdir}/server-1.6-branch.patch" || return 1
 
-  # Pending updates for 1.6.2 - http://wiki.x.org/wiki/Server16Branch
-  patch -Np1 -i "${srcdir}/pending-1.6.2.patch" || return 1
-
   # Fix dbus config path
   sed -i -e 's/\$(sysconfdir)/\/etc/' config/Makefile.*  || return 1
 
+  libtoolize --force || return 1
+  aclocal || return 1
+  autoconf || return 1
+  automake || return 1
   ./configure --prefix=/usr \
               --enable-ipv6 \
               --enable-dri \

Modified: server-1.6-branch.patch
===================================================================
--- server-1.6-branch.patch	2009-07-18 15:33:50 UTC (rev 46490)
+++ server-1.6-branch.patch	2009-07-18 15:54:18 UTC (rev 46491)
@@ -1,777 +1,69 @@
-From 31536307703fcffa14a027ec777310c9962f816c Mon Sep 17 00:00:00 2001
+From 396d3a7762abd0dd84042833b75f2ebf9d100bb0 Mon Sep 17 00:00:00 2001
 From: Alan Coopersmith <alan.coopersmith at sun.com>
-Date: Sat, 02 May 2009 07:26:18 +0000
-Subject: XkbSetNamedIndicator should ignore SD's without LED's
+Date: Wed, 08 Jul 2009 18:26:46 +0000
+Subject: Fix build of drivers with 1.6.2 when not using --install-libxf86config
 
-When ProcXkbSetNamedIndicator is called on a core device, and we
-walk the slaves to set the LED's on each of them, ignore any slaves
-that do not have either a KbdFeedbackCtrl or LedCtrl structure.
+c859b736d1d23c5dc2f53958b1e76660e6d45018 removed duplicate entries for
+these from the Makefile, but removed a different set than was done in
+master branch, causing xf86Parser.h to not be installed, which in turn
+breaks the build of drivers like -ati, -intel & -nv that use xf86Modes.h,
+which includes xf86Parser.h
 
-(This is much more critical in xserver-1.5-branch, where we walk
- *all* devices, not just the slaves of the specified master, and
- thus return failure when setting an LED on the Core Keyboard and
- hit a xf86-input-mouse device with no LED's to set.)
-
 Signed-off-by: Alan Coopersmith <alan.coopersmith at sun.com>
-Acked-by: Peter Hutterer <peter.hutterer at who-t.net>
-(cherry picked from commit 557dbadf3be273255e8fdb12d9321f4e88bf2b65)
-
 Signed-off-by: Keith Packard <keithp at keithp.com>
 ---
-diff --git a/xkb/xkb.c b/xkb/xkb.c
-index 7c1edea..15a0f43 100644
---- a/xkb/xkb.c
-+++ b/xkb/xkb.c
-@@ -3438,6 +3438,7 @@ ProcXkbSetNamedIndicator(ClientPtr client)
-         for (other = inputInfo.devices; other; other = other->next)
-         {
-             if ((other != dev) && !other->isMaster && (other->u.master == dev) &&
-+                (other->kbdfeed || other->leds) &&
-                 (XaceHook(XACE_DEVICE_ACCESS, client, other, DixSetAttrAccess) == Success))
-             {
-                 rc = _XkbCreateIndicatorMap(other, stuff->indicator,
-@@ -3461,6 +3462,7 @@ ProcXkbSetNamedIndicator(ClientPtr client)
-         for (other = inputInfo.devices; other; other = other->next)
-         {
-             if ((other != dev) && !other->isMaster && (other->u.master == dev) &&
-+                (other->kbdfeed || other->leds) &&
-                 (XaceHook(XACE_DEVICE_ACCESS, client, other, DixSetAttrAccess) == Success))
-             {
-                 _XkbSetNamedIndicator(client, other, stuff);
---
-cgit v0.8.2
-From 78eb366c65a953bbc059a989a92dfe28fbe1ae29 Mon Sep 17 00:00:00 2001
-From: Jon TURNEY <jon.turney at dronecode.org.uk>
-Date: Thu, 12 Feb 2009 16:02:17 +0000
-Subject: Remove long-gone '-co' option from Xserver man page
-
-The '-co' option was removed in commit dda10c9066a660b647384179f82e1da8e063264f
-
-Signed-off-by: Jon TURNEY <jon.turney at dronecode.org.uk>
-(cherry picked from commit b0ad9e1ced9619f37acf77764c395c57b86cf463)
-
-Signed-off-by: Keith Packard <keithp at keithp.com>
----
-diff --git a/doc/Xserver.man.pre b/doc/Xserver.man.pre
-index 8897e1a..eace57d 100644
---- a/doc/Xserver.man.pre
-+++ b/doc/Xserver.man.pre
-@@ -117,10 +117,6 @@ sets key-click volume (allowable range: 0-100).
- sets the visual class for the root window of color screens.
- The class numbers are as specified in the X protocol.
- Not obeyed by all servers.
--.TP 8
--.B \-co \fIfilename\fP
--sets name of RGB color database.  The default is
--.IR __projectroot__/share/X11/rgb .
- .ig
- .TP 8
- .B \-config \fIfilename\fP
---
-cgit v0.8.2
-From 3f0c73694b9ddc85b82a7a82a5d98fa8b18a01a8 Mon Sep 17 00:00:00 2001
-From: Jon TURNEY <jon.turney at dronecode.org.uk>
-Date: Thu, 12 Feb 2009 16:03:16 +0000
-Subject: Remove references to rgb.txt from files section of Xserver and Xorg man pages
-
-The references to this file in the server code were removed in commit dda10c9066a660b647384179f82e1da8e063264f
-
-Signed-off-by: Jon TURNEY <jon.turney at dronecode.org.uk>
-(cherry picked from commit d0dd649035fc3698c5b436f9d9d248116aa106a3)
-
-Signed-off-by: Keith Packard <keithp at keithp.com>
----
-diff --git a/doc/Xserver.man.pre b/doc/Xserver.man.pre
-index eace57d..cd5bdbd 100644
---- a/doc/Xserver.man.pre
-+++ b/doc/Xserver.man.pre
-@@ -560,9 +560,6 @@ Bitmap font directories
- .IR __projectroot__/lib/X11/fonts/TTF , __projectroot__/lib/X11/fonts/Type1
- Outline font directories
- .TP 30
--.I __projectroot__/share/X11/rgb.txt
--Color database
--.TP 30
- .I /tmp/.X11-unix/X\fBn\fP
- Unix domain socket for display number \fBn\fP
- .TP 30
-diff --git a/hw/xfree86/doc/man/Xorg.man.pre b/hw/xfree86/doc/man/Xorg.man.pre
-index bf29fcb..4992dc7 100644
---- a/hw/xfree86/doc/man/Xorg.man.pre
-+++ b/hw/xfree86/doc/man/Xorg.man.pre
-@@ -542,9 +542,6 @@ Libraries.
- .B __projectroot__/lib/X11/fonts/\(**
- Fonts.
- .TP 30
--.B __projectroot__/share/X11/rgb.txt
--Color names to RGB mapping.
--.TP 30
- .B __projectroot__/share/X11/XErrorDB
- Client error message database.
- .TP 30
---
-cgit v0.8.2
-From bc95f29441b3daa7b9d91bd3c2b3e502a3a8cc81 Mon Sep 17 00:00:00 2001
-From: Alan Coopersmith <alan.coopersmith at sun.com>
-Date: Thu, 23 Apr 2009 15:42:38 +0000
-Subject: Fix byte swapping of XF86VidMode{Get,Set}GammaRamp
-
-Fixes OpenSolaris Bug 8315:
-Xorg segfaults when screensaver fades in cross-endian xdmcp session
-<http://defect.opensolaris.org/bz/show_bug.cgi?id=8315>
-
-Signed-off-by: Alan Coopersmith <alan.coopersmith at sun.com>
-(cherry picked from commit 7d0f7518c2235a9dc783029971259ddaada2db20)
-
-Signed-off-by: Keith Packard <keithp at keithp.com>
----
-diff --git a/hw/xfree86/dixmods/extmod/xf86vmode.c b/hw/xfree86/dixmods/extmod/xf86vmode.c
-index 6485a04..aecaf94 100644
---- a/hw/xfree86/dixmods/extmod/xf86vmode.c
-+++ b/hw/xfree86/dixmods/extmod/xf86vmode.c
-@@ -1543,6 +1543,7 @@ ProcXF86VidModeGetGammaRamp(ClientPtr client)
- {
-     CARD16 *ramp = NULL;
-     int n, length, i;
-+    size_t ramplen;
-     xXF86VidModeGetGammaRampReply rep;
-     REQUEST(xXF86VidModeGetGammaRampReq);
+diff --git a/hw/xfree86/parser/Makefile.am b/hw/xfree86/parser/Makefile.am
+index 6ed1814..a2774a4 100644
+--- a/hw/xfree86/parser/Makefile.am
++++ b/hw/xfree86/parser/Makefile.am
+@@ -1,8 +1,5 @@
+ if INSTALL_LIBXF86CONFIG
+ lib_LIBRARIES = libxf86config.a
+-LIBHEADERS = \
+-	xf86Optrec.h \
+-	xf86Parser.h
+ else
+ noinst_LIBRARIES = libxf86config.a
+ endif
+@@ -30,9 +27,8 @@ AM_CFLAGS = $(DIX_CFLAGS) $(XORG_CFLAGS)
+ EXTRA_DIST = \
+ 	Configint.h \
+ 	configProcs.h \
+-	xf86Optrec.h \
+-	xf86Parser.h \
+ 	xf86tokens.h
  
-@@ -1557,7 +1558,8 @@ ProcXF86VidModeGetGammaRamp(ClientPtr client)
-     length = (stuff->size + 1) & ~1;
- 
-     if(stuff->size) {
--        if(!(ramp = xalloc(length * 3 * sizeof(CARD16))))
-+	ramplen = length * 3 * sizeof(CARD16);
-+	if (!(ramp = xalloc(ramplen)))
- 	    return BadAlloc;
-    
-         if (!VidModeGetGammaRamp(stuff->screen, stuff->size, 
-@@ -1575,13 +1577,12 @@ ProcXF86VidModeGetGammaRamp(ClientPtr client)
- 	swaps(&rep.sequenceNumber, n);
- 	swapl(&rep.length, n);
- 	swaps(&rep.size, n);
--	for(i = 0; i < length * 3; i++)
--	    swaps(&ramp[i],n);
-+	SwapShorts(ramp, length * 3);
-     }
-     WriteToClient(client, sizeof(xXF86VidModeGetGammaRampReply), (char *)&rep);
- 
-     if(stuff->size) {
--	WriteToClient(client, rep.length << 2, (char*)ramp);
-+	WriteToClient(client, ramplen, (char*)ramp);
-         xfree(ramp);
-     }
- 
-@@ -2062,7 +2063,6 @@ SProcXF86VidModeGetGamma(ClientPtr client)
- static int
- SProcXF86VidModeSetGammaRamp(ClientPtr client)
- {
--    CARD16 *ramp;
-     int length, n;
-     REQUEST(xXF86VidModeSetGammaRampReq);
-     swaps(&stuff->length, n);
-@@ -2071,11 +2071,7 @@ SProcXF86VidModeSetGammaRamp(ClientPtr client)
-     swaps(&stuff->screen, n);
-     length = ((stuff->size + 1) & ~1) * 6;
-     REQUEST_FIXED_SIZE(xXF86VidModeSetGammaRampReq, length);
--    ramp = (CARD16*)&stuff[1];
--    while(length--) {
--	swaps(ramp, n);
--	ramp++;
--    }
-+    SwapRestS(stuff);
-     return ProcXF86VidModeSetGammaRamp(client);
- }
- 
+ sdk_HEADERS = \
+-	$(LIBHEADERS)
++	xf86Optrec.h \
++	xf86Parser.h
 --
 cgit v0.8.2
-From 7cd596e0dd6b9c195d7e395c26bfb00ef544c525 Mon Sep 17 00:00:00 2001
-From: Dave Airlie <airlied at linux.ie>
-Date: Wed, 15 Apr 2009 08:26:06 +0000
-Subject: randr12: looking up these bits if randr isn't initialised is bad.
+From 606f6dba16d42e3546a82a386d5a01087467b511 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax at redhat.com>
+Date: Tue, 14 Apr 2009 14:54:25 +0000
+Subject: xdmcp: Don't crash on X -query with more than 255 IP addresses. (#20675)
 
-When xinerama is enabled we don't get randr protocol, but the
-driver might still want randr internals
-(cherry picked from commit faf7dfa099f5b42a703313fbd1bf8afdad07a179)
+You could be more clever than this, but the wire protocol says this
+really is an array of not more than 255 ARRAY8, so it's not just a
+matter of changing the types.
 
-Signed-off-by: Keith Packard <keithp at keithp.com>
+(cherry picked from commit 0eb19f9437b7d8c19592e49eedb028771d300d80)
 ---
-diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c
-index 6f93a0d..4546492 100644
---- a/hw/xfree86/modes/xf86RandR12.c
-+++ b/hw/xfree86/modes/xf86RandR12.c
-@@ -752,8 +752,8 @@ _X_EXPORT Bool
- xf86RandR12CreateScreenResources (ScreenPtr pScreen)
- {
-     ScrnInfoPtr		pScrn = xf86Screens[pScreen->myNum];
--    xf86CrtcConfigPtr   config = XF86_CRTC_CONFIG_PTR(pScrn);
--    XF86RandRInfoPtr	randrp = XF86RANDRINFO(pScreen);
-+    xf86CrtcConfigPtr   config;
-+    XF86RandRInfoPtr	randrp;
-     int			c;
-     int			width, height;
-     int			mmWidth, mmHeight;
-@@ -763,6 +763,8 @@ xf86RandR12CreateScreenResources (ScreenPtr pScreen)
- 	return TRUE;
- #endif
- 
-+    config = XF86_CRTC_CONFIG_PTR(pScrn);
-+    randrp = XF86RANDRINFO(pScreen);
-     /*
-      * Compute size of screen
-      */
---
-cgit v0.8.2
-From 9c643b1e3ddc4ec9f1a924bd25f24df8536c7ea6 Mon Sep 17 00:00:00 2001
-From: Peter Hutterer <peter.hutterer at who-t.net>
-Date: Thu, 16 Apr 2009 06:17:07 +0000
-Subject: os: don't malloc memory in LogVMessageVerb.
-
-LogVWrite is limited to a buffer size of 1024, so we don't loose anything here
-by truncating. This way we can use LogVMessageVerb (and xf86Msg and friends)
-during signal handlers with the normal message types.
-
-Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
-Acked-by: Alan Coopersmith <alan.coopersmith at sun.com>
-(cherry picked from commit 0e0642ee9466d3268476d0084a83a9d93a4aa555)
-
-Signed-off-by: Keith Packard <keithp at keithp.com>
----
-diff --git a/os/log.c b/os/log.c
-index 39bbd60..692e78a 100644
---- a/os/log.c
-+++ b/os/log.c
-@@ -312,7 +312,7 @@ _X_EXPORT void
- LogVMessageVerb(MessageType type, int verb, const char *format, va_list args)
- {
-     const char *s  = X_UNKNOWN_STRING;
--    char *tmpBuf = NULL;
-+    char tmpBuf[1024];
- 
-     /* Ignore verbosity for X_ERROR */
-     if (logVerbosity >= verb || logFileVerbosity >= verb || type == X_ERROR) {
-@@ -354,21 +354,11 @@ LogVMessageVerb(MessageType type, int verb, const char *format, va_list args)
- 	    break;
+diff --git a/os/xdmcp.c b/os/xdmcp.c
+index 736cd3e..746f598 100644
+--- a/os/xdmcp.c
++++ b/os/xdmcp.c
+@@ -491,7 +491,9 @@ XdmcpRegisterConnection (
+ 	    return;
  	}
- 
--	/*
--	 * Prefix the format string with the message type.  We do it this way
--	 * so that LogVWrite() is only called once per message.
--	 */
--	if (s) {
--	    tmpBuf = malloc(strlen(format) + strlen(s) + 1 + 1);
--	    /* Silently return if malloc fails here. */
--	    if (!tmpBuf)
--		return;
--	    sprintf(tmpBuf, "%s ", s);
--	    strcat(tmpBuf, format);
--	    LogVWrite(verb, tmpBuf, args);
--	    free(tmpBuf);
--	} else
--	    LogVWrite(verb, format, args);
-+        /* if s is not NULL we need a space before format */
-+        snprintf(tmpBuf, sizeof(tmpBuf), "%s%s%s", s ? s : "",
-+                                                   s ? " " : "",
-+                                                   format);
-+        LogVWrite(verb, tmpBuf, args);
      }
- }
- 
+-    newAddress = (CARD8 *) xalloc (addrlen * sizeof (CARD8));
++    if (ConnectionAddresses.length + 1 == 256)
++	return;
++    newAddress = xalloc (addrlen * sizeof (CARD8));
+     if (!newAddress)
+ 	return;
+     if (!XdmcpReallocARRAY16 (&ConnectionTypes, ConnectionTypes.length + 1))
 --
 cgit v0.8.2
-From b575af88d0e547a03b164f6f3b2d4b268b9ffc34 Mon Sep 17 00:00:00 2001
-From: Peter Hutterer <peter.hutterer at who-t.net>
-Date: Wed, 06 May 2009 12:25:28 +0000
-Subject: Xi: fix copy/paste error causing sizeof against wrong struct.
-
-This wrong check may cause BadLength to be returned to the client even if the
-length is correct.
-
-Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
-(cherry picked from commit 8b583ca2b21155359c6255f406c96599b277c762)
-
-Signed-off-by: Keith Packard <keithp at keithp.com>
----
-diff --git a/Xi/xiproperty.c b/Xi/xiproperty.c
-index 26af3fc..04b2c81 100644
---- a/Xi/xiproperty.c
-+++ b/Xi/xiproperty.c
-@@ -650,7 +650,7 @@ ProcXChangeDeviceProperty (ClientPtr client)
-         return BadValue;
-     }
-     len = stuff->nUnits;
--    if (len > ((0xffffffff - sizeof(xChangePropertyReq)) >> 2))
-+    if (len > ((0xffffffff - sizeof(xChangeDevicePropertyReq)) >> 2))
-         return BadLength;
-     sizeInBytes = format>>3;
-     totalSize = len * sizeInBytes;
---
-cgit v0.8.2
-From 21f58a2b0d0d96492d2d7c7de1bd654ed0114279 Mon Sep 17 00:00:00 2001
-From: Peter Hutterer <peter.hutterer at who-t.net>
-Date: Wed, 06 May 2009 06:55:32 +0000
-Subject: Xi: don't double-swap the XListDeviceProperties reply.
-
-Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
-(cherry picked from commit 50cc8adafca4ba3838d468278d6eb8a4692d2488)
-
-Signed-off-by: Keith Packard <keithp at keithp.com>
----
-diff --git a/Xi/xiproperty.c b/Xi/xiproperty.c
-index 04b2c81..b04ee94 100644
---- a/Xi/xiproperty.c
-+++ b/Xi/xiproperty.c
-@@ -602,13 +602,6 @@ ProcXListDeviceProperties (ClientPtr client)
-     rep.length = (numProps * sizeof(Atom)) >> 2;
-     rep.sequenceNumber = client->sequence;
-     rep.nAtoms = numProps;
--    if (client->swapped)
--    {
--        int n;
--        swaps (&rep.sequenceNumber, n);
--        swapl (&rep.length, n);
--        swaps (&rep.nAtoms, n);
--    }
-     temppAtoms = pAtoms;
-     for (prop = dev->properties.properties; prop; prop = prop->next)
-         *temppAtoms++ = prop->propertyName;
---
-cgit v0.8.2
-From 773e4890b385a229b0919b4a249714d0bb7171a2 Mon Sep 17 00:00:00 2001
-From: Alan Coopersmith <alan.coopersmith at sun.com>
-Date: Fri, 27 Mar 2009 05:25:08 +0000
-Subject: Don't leak canonical module name and patterns if module is built-in
-
-Signed-off-by: Alan Coopersmith <alan.coopersmith at sun.com>
-Acked-by: Peter Hutterer <peter.hutterer at who-t.net>
-(cherry picked from commit 1c101d75d4855b2698e3fc8d2dd662f20585812f)
-
-Signed-off-by: Keith Packard <keithp at keithp.com>
----
-diff --git a/hw/xfree86/loader/loadmod.c b/hw/xfree86/loader/loadmod.c
-index e98f013..22b540c 100644
---- a/hw/xfree86/loader/loadmod.c
-+++ b/hw/xfree86/loader/loadmod.c
-@@ -867,7 +867,8 @@ doLoadModule(const char *module, const char *path, const char **subdirlist,
- 	if (!strcmp (m, *cim))
- 	{
- 	    xf86MsgVerb(X_INFO, 3, "Module \"%s\" already built-in\n", m);
--	    return (ModuleDescPtr) 1;
-+	    ret = (ModuleDescPtr) 1;
-+	    goto LoadModule_exit;
- 	}
- 
-     if (!name) {
---
-cgit v0.8.2
-From 0fbf6f30f771e60714fb3003a9bb1a6b79e50c6e Mon Sep 17 00:00:00 2001
-From: Alan Coopersmith <alan.coopersmith at sun.com>
-Date: Fri, 27 Mar 2009 05:22:32 +0000
-Subject: Don't leak default font path when appending built-ins
-
-Signed-off-by: Alan Coopersmith <alan.coopersmith at sun.com>
-(cherry picked from commit 66539cc05d0b017b9feb4a038499907810140623)
-
-Signed-off-by: Keith Packard <keithp at keithp.com>
----
-diff --git a/hw/xfree86/common/xf86Config.c b/hw/xfree86/common/xf86Config.c
-index 17223a1..9e56ca9 100644
---- a/hw/xfree86/common/xf86Config.c
-+++ b/hw/xfree86/common/xf86Config.c
-@@ -601,7 +601,9 @@ configFiles(XF86ConfFilesPtr fileconf)
- 	    defaultFontPath = Xprintf("%s%s%s",
- 				      fileconf->file_fontpath,
- 				      *temp_path ? "," : "", temp_path);
--	    must_copy = FALSE;
-+	    if (defaultFontPath != NULL) {
-+		must_copy = FALSE;
-+	    }
- 	}
- 	else
- 	    defaultFontPath = fileconf->file_fontpath;
-@@ -617,7 +619,14 @@ configFiles(XF86ConfFilesPtr fileconf)
- 	!((start == temp_path || start[-1] == ',') && (!*end || *end == ','))) {
- 	defaultFontPath = Xprintf("%s%sbuilt-ins",
- 				  temp_path, *temp_path ? "," : "");
--	must_copy = FALSE;
-+	if (must_copy == TRUE) {
-+	    if (defaultFontPath != NULL) {
-+		must_copy = FALSE;
-+	    }
-+	} else {
-+	    /* already made a copy of the font path */
-+	    xfree(temp_path);
-+	}
-     }
-     /* xf86ValidateFontPath modifies its argument, but returns a copy of it. */
-     temp_path = must_copy ? XNFstrdup(defaultFontPath) : defaultFontPath;
---
-cgit v0.8.2
-From a9f85dcefbadfe44d8c58ad08430aaadb8c59d34 Mon Sep 17 00:00:00 2001
-From: Eamon Walsh <ewalsh at tycho.nsa.gov>
-Date: Mon, 11 May 2009 19:27:46 +0000
-Subject: xselinux: Relax ownership restriction on SetSelectionUseContext.
-
-Instead, clients should keep track of the selection instances they use.
-(cherry picked from commit 0952d12717031e9dda9e48123bb922d0f4e81834)
-
-Signed-off-by: Eamon Walsh <ewalsh at tycho.nsa.gov>
----
-diff --git a/Xext/xselinux.c b/Xext/xselinux.c
-index 2a32bb8..6c99c29 100644
---- a/Xext/xselinux.c
-+++ b/Xext/xselinux.c
-@@ -1349,15 +1349,6 @@ ProcSELinuxSetCreateContext(ClientPtr client, unsigned offset)
- 	    goto out;
- 	privPtr = &serverClient->devPrivates;
-     }
--    else if (offset == USE_SEL) {
--	/* Selection use context currently requires no selections owned */
--	Selection *pSel;
--	for (pSel = CurrentSelections; pSel; pSel = pSel->next)
--	    if (pSel->client == client) {
--		rc = BadMatch;
--		goto out;
--	    }
--    }
- 
-     ptr = dixLookupPrivate(privPtr, subjectKey);
-     pSid = (security_id_t *)(ptr + offset);
---
-cgit v0.8.2
-From 5cd5a01259ba349f1868ca4af04207cf120d69e4 Mon Sep 17 00:00:00 2001
-From: Eamon Walsh <ewalsh at tycho.nsa.gov>
-Date: Tue, 19 May 2009 23:30:33 +0000
-Subject: xace: Fix a bad device access hook call.
-
-Add a proper access mode, and reverse the logic of the return value.
-Zero ("Success") is returned on success from the hook calls.
-
-Signed-off-by: Eamon Walsh <ewalsh at tycho.nsa.gov>
-(cherry picked from commit 3cea176d5abcb0f14eefbdcbe17fed0847524dd4)
----
-diff --git a/dix/events.c b/dix/events.c
-index 63b0674..ee6ac9e 100644
---- a/dix/events.c
-+++ b/dix/events.c
-@@ -4220,10 +4220,10 @@ CoreFocusEvent(DeviceIntPtr dev, int type, int mode, int detail, WindowPtr pWin)
-     {
-         xKeymapEvent ke;
-         ClientPtr client = clients[CLIENT_ID(pWin->drawable.id)];
--        if (XaceHook(XACE_DEVICE_ACCESS, client, dev, FALSE))
--            memmove((char *)&ke.map[0], (char *)&dev->key->down[1], 31);
--        else
-+        if (XaceHook(XACE_DEVICE_ACCESS, client, dev, DixReadAccess))
-             bzero((char *)&ke.map[0], 31);
-+        else
-+            memmove((char *)&ke.map[0], (char *)&dev->key->down[1], 31);
- 
-         ke.type = KeymapNotify;
-         (void)DeliverEventsToWindow(dev, pWin, (xEvent *)&ke, 1,
---
-cgit v0.8.2
-From c643d24cdeaade8d7839691a3113c4d2d17be61e Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax at redhat.com>
-Date: Fri, 29 May 2009 22:07:48 +0000
-Subject: vfb: Fix depth setup.
-
-Initialize the depth corresponding to the root window before the
-pixmap-only depths.  Otherwise you end up with the root window depth in
-the depth list twice, which is mildly confusing for clients and
-catastrophically confusing for PanoramiXConsolidate().
-(cherry picked from commit 45530d16097459a756696e255ab4e72d6e51fbc4)
----
-diff --git a/hw/vfb/InitOutput.c b/hw/vfb/InitOutput.c
-index 6bf6a33..fd383e1 100644
---- a/hw/vfb/InitOutput.c
-+++ b/hw/vfb/InitOutput.c
-@@ -862,8 +862,6 @@ vfbScreenInit(int index, ScreenPtr pScreen, int argc, char **argv)
-     pbits = vfbAllocateFramebufferMemory(pvfb);
-     if (!pbits) return FALSE;
- 
--    miSetPixmapDepths ();
--
-     switch (pvfb->depth) {
-     case 8:
- 	miSetVisualTypesAndMasks (8,
-@@ -875,20 +873,6 @@ vfbScreenInit(int index, ScreenPtr pScreen, int argc, char **argv)
- 				   (1 << DirectColor)),
- 				  8, PseudoColor, 0, 0, 0);
- 	break;
--#if 0
--    /* 12bit PseudoColor with 12bit color resolution
--     * (to simulate SGI hardware and the 12bit PseudoColor emulation layer) */
--    case 12:
--	miSetVisualTypesAndMasks (12,
--				  ((1 << StaticGray) |
--				   (1 << GrayScale) |
--				   (1 << StaticColor) |
--				   (1 << PseudoColor) |
--				   (1 << TrueColor) |
--				   (1 << DirectColor)),
--				  12, PseudoColor, 0, 0, 0);
--	break;
--#endif
-     case 15:
- 	miSetVisualTypesAndMasks (15,
- 				  ((1 << TrueColor) |
-@@ -907,18 +891,10 @@ vfbScreenInit(int index, ScreenPtr pScreen, int argc, char **argv)
- 				   (1 << DirectColor)),
- 				  8, TrueColor, 0xff0000, 0x00ff00, 0x0000ff);
- 	break;
--#if 0
--    /* 30bit TrueColor (to simulate Sun's XVR-1000/-4000 high quality
--     * framebuffer series) */
--    case 30:
--	miSetVisualTypesAndMasks (30,
--				  ((1 << TrueColor) |
--				   (1 << DirectColor)),
--				  10, TrueColor, 0x3ff00000, 0x000ffc00, 0x000003ff);
--	break;
--#endif
-     }
--	
-+
-+    miSetPixmapDepths ();
-+
-     ret = fbScreenInit(pScreen, pbits, pvfb->width, pvfb->height,
- 		       dpix, dpiy, pvfb->paddedWidth,pvfb->bitsPerPixel);
- #ifdef RENDER
---
-cgit v0.8.2
-From ebca49e0fedcc1c536f1dee7c58cae9903e74fa2 Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax at redhat.com>
-Date: Thu, 21 May 2009 14:20:48 +0000
-Subject: EDID: Be more cautious about finding vendor blocks.
-
-Many old monitors zero-fill the detailed descriptors, so check for that
-to avoid a useless warning like:
-
-(WW) RADEON(0): Unknown vendor-specific block 0
-(cherry picked from commit a2c5ee36b21c2ee5c0468f1b251e74c1412dbecb)
----
-diff --git a/hw/xfree86/ddc/interpret_edid.c b/hw/xfree86/ddc/interpret_edid.c
-index c4d8963..191e900 100644
---- a/hw/xfree86/ddc/interpret_edid.c
-+++ b/hw/xfree86/ddc/interpret_edid.c
-@@ -284,6 +284,8 @@ get_std_timing_section(Uchar *c, struct std_timings *r,
-     }
- }
- 
-+static const unsigned char empty_block[18];
-+
- static void
- get_dt_md_section(Uchar *c, struct edid_version *ver, 
- 		  struct detailed_monitor_section *det_mon)
-@@ -335,10 +337,10 @@ get_dt_md_section(Uchar *c, struct edid_version *ver,
-         det_mon[i].type = DS_UNKOWN;
-         break;
-       }
--      if (c[3] <= 0x0F) {
-+      if (c[3] <= 0x0F && memcmp(c, empty_block, sizeof(empty_block))) {
- 	det_mon[i].type = DS_VENDOR + c[3];
-       }
--    } else { 
-+    } else {
-       det_mon[i].type = DT;
-       get_detailed_timing_section(c,&det_mon[i].section.d_timings);
-     }
---
-cgit v0.8.2
-From db61eff891675aeaf2466c3529424de4621005dc Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax at redhat.com>
-Date: Fri, 22 May 2009 16:01:55 +0000
-Subject: EDID: Add modes from Established Timings III descriptor to mode pool
-
-EDID 1.4, section 3.10.3.9
-(cherry picked from commit 99e22b86c5f1a3653f3caaf01368a777d2b208d0)
----
-diff --git a/hw/xfree86/ddc/edid.h b/hw/xfree86/ddc/edid.h
-index 45caf6e..3ca402f 100644
---- a/hw/xfree86/ddc/edid.h
-+++ b/hw/xfree86/ddc/edid.h
-@@ -527,7 +527,7 @@ struct detailed_monitor_section {
-     struct whitePoints wp[2];		/* 32 */
-     /* color management data */
-     struct cvt_timings cvt[4];		/* 64 */
--    /* established timings III */
-+    Uchar est_iii[6];			/* 6 */
-   } section;				/* max: 80 */
- };
- 
-diff --git a/hw/xfree86/ddc/interpret_edid.c b/hw/xfree86/ddc/interpret_edid.c
-index 191e900..310606c 100644
---- a/hw/xfree86/ddc/interpret_edid.c
-+++ b/hw/xfree86/ddc/interpret_edid.c
-@@ -329,6 +329,7 @@ get_dt_md_section(Uchar *c, struct edid_version *ver,
- 	break;
-       case ADD_EST_TIMINGS:
- 	det_mon[i].type = DS_EST_III;
-+	memcpy(det_mon[i].section.est_iii, c + 6, 6);
- 	break;
-       case ADD_DUMMY:
- 	det_mon[i].type = DS_DUMMY;
-diff --git a/hw/xfree86/modes/xf86EdidModes.c b/hw/xfree86/modes/xf86EdidModes.c
-index 54f2c65..087f663 100644
---- a/hw/xfree86/modes/xf86EdidModes.c
-+++ b/hw/xfree86/modes/xf86EdidModes.c
-@@ -628,6 +628,85 @@ DDCModesFromCVT(int scrnIndex, struct cvt_timings *t)
- }
- #endif
- 
-+static const struct {
-+    short w;
-+    short h;
-+    short r;
-+    short rb;
-+} EstIIIModes[] = {
-+    /* byte 6 */
-+    { 640, 350, 85, 0 },
-+    { 640, 400, 85, 0 },
-+    { 720, 400, 85, 0 },
-+    { 640, 480, 85, 0 },
-+    { 848, 480, 60, 0 },
-+    { 800, 600, 85, 0 },
-+    { 1024, 768, 85, 0 },
-+    { 1152, 864, 75, 0 },
-+    /* byte 7 */
-+    { 1280, 768, 60, 1 },
-+    { 1280, 768, 60, 0 },
-+    { 1280, 768, 75, 0 },
-+    { 1280, 768, 85, 0 },
-+    { 1280, 960, 60, 0 },
-+    { 1280, 960, 85, 0 },
-+    { 1280, 1024, 60, 0 },
-+    { 1280, 1024, 85, 0 },
-+    /* byte 8 */
-+    { 1360, 768, 60, 0 },
-+    { 1440, 900, 60, 1 },
-+    { 1440, 900, 60, 0 },
-+    { 1440, 900, 75, 0 },
-+    { 1440, 900, 85, 0 },
-+    { 1400, 1050, 60, 1 },
-+    { 1400, 1050, 60, 0 },
-+    { 1400, 1050, 75, 0 },
-+    /* byte 9 */
-+    { 1400, 1050, 85, 0 },
-+    { 1680, 1050, 60, 1 },
-+    { 1680, 1050, 60, 0 },
-+    { 1680, 1050, 75, 0 },
-+    { 1680, 1050, 85, 0 },
-+    { 1600, 1200, 60, 0 },
-+    { 1600, 1200, 65, 0 },
-+    { 1600, 1200, 70, 0 },
-+    /* byte 10 */
-+    { 1600, 1200, 75, 0 },
-+    { 1600, 1200, 85, 0 },
-+    { 1792, 1344, 60, 0 },
-+    { 1792, 1344, 85, 0 },
-+    { 1856, 1392, 60, 0 },
-+    { 1856, 1392, 75, 0 },
-+    { 1920, 1200, 60, 1 },
-+    { 1920, 1200, 60, 0 },
-+    /* byte 11 */
-+    { 1920, 1200, 75, 0 },
-+    { 1920, 1200, 85, 0 },
-+    { 1920, 1440, 60, 0 },
-+    { 1920, 1440, 75, 0 },
-+};
-+
-+static DisplayModePtr
-+DDCModesFromEstIII(unsigned char *est)
-+{
-+    DisplayModePtr modes = NULL;
-+    int i, j, m;
-+
-+    for (i = 0; i < 6; i++) {
-+	for (j = 7; j > 0; j--) {
-+	    if (est[i] & (1 << j)) {
-+		m = (i * 8) + (7 - j);
-+		modes = xf86ModesAdd(modes,
-+				     FindDMTMode(EstIIIModes[m].w,
-+						 EstIIIModes[m].h,
-+						 EstIIIModes[m].r,
-+						 EstIIIModes[m].rb));
-+	    }
-+	}
-+    }
-+
-+    return modes;
-+}
- 
- /*
-  * This is only valid when the sink claims to be continuous-frequency
-@@ -798,6 +877,7 @@ xf86DDCGetModes(int scrnIndex, xf86MonPtr DDC)
-     for (i = 0; i < DET_TIMINGS; i++) {
- 	struct detailed_monitor_section *det_mon = &DDC->det_mon[i];
- 
-+	Mode = NULL;
-         switch (det_mon->type) {
-         case DT:
-             Mode = DDCModeFromDetailedTiming(scrnIndex,
-@@ -805,22 +885,23 @@ xf86DDCGetModes(int scrnIndex, xf86MonPtr DDC)
- 					     preferred,
- 					     quirks);
- 	    preferred = FALSE;
--            Modes = xf86ModesAdd(Modes, Mode);
-             break;
-         case DS_STD_TIMINGS:
-             Mode = DDCModesFromStandardTiming(det_mon->section.std_t,
- 					      quirks, timing_level, rb);
--            Modes = xf86ModesAdd(Modes, Mode);
-             break;
- #if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(7,0,0,0,0)
- 	case DS_CVT:
- 	    Mode = DDCModesFromCVT(scrnIndex, det_mon->section.cvt);
--	    Modes = xf86ModesAdd(Modes, Mode);
- 	    break;
- #endif
-+	case DS_EST_III:
-+	    Mode = DDCModesFromEstIII(det_mon->section.est_iii);
-+	    break;
-         default:
-             break;
-         }
-+	Modes = xf86ModesAdd(Modes, Mode);
-     }
- 
-     /* Add established timings */
---
-cgit v0.8.2
-From dbac41b624e4aa86a6a184b7ebb52bfdd367bbf0 Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax at redhat.com>
-Date: Fri, 19 Jun 2009 16:42:07 +0000
-Subject: pci: Dump vendor/devices ids in the printed device list
-
-(cherry picked from commit eb35402d0a5290e8a73d7d1e92f173294c364cc2)
----
-diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
-index 467a0c3..5b29a15 100644
---- a/hw/xfree86/common/xf86pciBus.c
-+++ b/hw/xfree86/common/xf86pciBus.c
-@@ -417,18 +417,16 @@ xf86PciProbe(void)
- 	if (xf86IsPrimaryPci(info))
- 	    prim = "*";
- 
--	xf86Msg( X_PROBED, "PCI:%s(%u@%u:%u:%u) ", prim, info->domain,
--		 info->bus, info->dev, info->func );
-+	xf86Msg(X_PROBED, "PCI:%s(%u:%u:%u:%u) %04x:%04x:%04x:%04x ", prim,
-+		info->domain, info->bus, info->dev, info->func,
-+		info->vendor_id, info->device_id,
-+		info->subvendor_id, info->subdevice_id);
- 
- 	if (vendorname)
- 	    xf86ErrorF("%s ", vendorname);
--	else
--	    xf86ErrorF("unknown vendor (0x%04x) ", info->vendor_id);
- 
- 	if (chipname)
- 	    xf86ErrorF("%s ", chipname);
--	else
--	    xf86ErrorF("unknown chipset (0x%04x) ", info->device_id);
- 
- 	xf86ErrorF("rev %d", info->revision);
- 
---
-cgit v0.8.2




More information about the arch-commits mailing list