xserver: Branch 'server-1.4-branch' - 8 commits

Daniel Stone daniels at kemper.freedesktop.org
Fri May 16 07:21:17 PDT 2008


 config/hal.c                   |    8 +++++---
 configure.ac                   |    2 +-
 exa/exa.c                      |    2 +-
 hw/dmx/Makefile.am             |    1 +
 hw/dmx/dmxinput.c              |   11 +++++++++++
 hw/kdrive/ephyr/Makefile.am    |    1 +
 hw/xfree86/modes/xf86Cursors.c |    3 ++-
 hw/xprint/Makefile.am          |    2 +-
 hw/xprint/ddxInit.c            |   11 +++++++++++
 9 files changed, 34 insertions(+), 7 deletions(-)

New commits:
commit d5a7badd6a0ea4ecbe76f0205aa53b42f7cd90dc
Author: Adam Jackson <ajax at redhat.com>
Date:   Mon May 5 14:37:07 2008 -0400

    Fix hal shutdown crash.
    
    Removing the device invalidates its ->next pointer.  Copy it aside before
    destroying the device.
    (cherry picked from commit f52f6c5c7efc281f9ac204fbaa4f71383df7463d)

diff --git a/config/hal.c b/config/hal.c
index 16f16ec..bdf7d6c 100644
--- a/config/hal.c
+++ b/config/hal.c
@@ -63,7 +63,7 @@ remove_device(DeviceIntPtr dev)
 static void
 device_removed(LibHalContext *ctx, const char *udi)
 {
-    DeviceIntPtr dev;
+    DeviceIntPtr dev, next;
     char *value;
 
     value = xalloc(strlen(udi) + 5); /* "hal:" + NULL */
@@ -71,11 +71,13 @@ device_removed(LibHalContext *ctx, const char *udi)
         return;
     sprintf(value, "hal:%s", udi);
 
-    for (dev = inputInfo.devices; dev; dev = dev->next) {
+    for (dev = inputInfo.devices; dev; dev = next) {
+	next = dev->next;
         if (dev->config_info && strcmp(dev->config_info, value) == 0)
             remove_device(dev);
     }
-    for (dev = inputInfo.off_devices; dev; dev = dev->next) {
+    for (dev = inputInfo.off_devices; dev; dev = next) {
+	next = dev->next;
         if (dev->config_info && strcmp(dev->config_info, value) == 0)
             remove_device(dev);
     }
commit 458b487723a7beb792857c920e9be22c2ce4625d
Author: Eric Anholt <eric at anholt.net>
Date:   Fri Aug 17 12:14:16 2007 -0700

    Fix overly-restrictive integer overflow check in EXA pixmap creation.
    
    The result was that at 32bpp, pixmaps of width 8192 or greater couldn't be
    created, due to treating a pitch value as a width.
    (cherry picked from commit bc2d516f16d94c805b4dfa8e5b9eef40ff0cbe98)

diff --git a/exa/exa.c b/exa/exa.c
index aa42b92..b2faf2f 100644
--- a/exa/exa.c
+++ b/exa/exa.c
@@ -253,7 +253,7 @@ exaCreatePixmap(ScreenPtr pScreen, int w, int h, int depth)
 				     pExaScr->info->pixmapPitchAlign);
     pExaPixmap->fb_size = pExaPixmap->fb_pitch * h;
 
-    if (pExaPixmap->fb_pitch > 32767) {
+    if (pExaPixmap->fb_pitch > 131071) {
 	fbDestroyPixmap(pPixmap);
 	return NULL;
     }
commit 2621380cf680941a0423d64d827fb3513545ebf5
Author: Michel Dänzer <michel at tungstengraphics.com>
Date:   Thu Mar 20 09:18:29 2008 -0400

    Fix RandR 1.2 driver interface conversion of two colour cursors to ARGB
    
    This patch (and not setting HARDWARE_CURSOR_BIT_ORDER_MSBFIRST on big endian
    platforms) fixes it for me with the radeon driver and doesn't break intel.
    
    Correct patch this time :)
    (cherry picked from commit da973e962d09854b571320dee7dd9569060bc39e)

diff --git a/hw/xfree86/modes/xf86Cursors.c b/hw/xfree86/modes/xf86Cursors.c
index b510164..a7616e0 100644
--- a/hw/xfree86/modes/xf86Cursors.c
+++ b/hw/xfree86/modes/xf86Cursors.c
@@ -137,7 +137,8 @@ cursor_bitpos (int flags, int x, Bool mask)
 	mask = !mask;
     if (flags & HARDWARE_CURSOR_NIBBLE_SWAPPED)
 	x = (x & ~3) | (3 - (x & 3));
-    if (flags & HARDWARE_CURSOR_BIT_ORDER_MSBFIRST)
+    if (((flags & HARDWARE_CURSOR_BIT_ORDER_MSBFIRST) == 0) ==
+	(X_BYTE_ORDER == X_BIG_ENDIAN))
 	x = (x & ~7) | (7 - (x & 7));
     if (flags & HARDWARE_CURSOR_SOURCE_MASK_INTERLEAVE_1)
 	x = (x << 1) + mask;
commit 9db5401d69f1fab8db4bdd166536a25e4516e231
Author: Donnie Berkholz <dberkholz at gentoo.org>
Date:   Thu May 8 00:08:12 2008 -0700

    xprint: fix linking by including XSERVER_LIBS.

diff --git a/hw/xprint/Makefile.am b/hw/xprint/Makefile.am
index f834966..2269544 100644
--- a/hw/xprint/Makefile.am
+++ b/hw/xprint/Makefile.am
@@ -12,7 +12,7 @@ Xprt_LDFLAGS = -L$(top_srcdir)
 Xprt_LDADD = @XPRINT_LIBS@ ps/libps.la raster/libraster.la  \
 	pcl/libpcl.la pcl-mono/libpcl.la $(top_builddir)/fb/libfb.la \
 	$(top_builddir)/render/librender.la $(top_builddir)/mi/libmi.la \
-	$(top_builddir)/Xext/libXext.la  @FREETYPE_LIBS@
+	$(top_builddir)/Xext/libXext.la  @FREETYPE_LIBS@ @XSERVER_LIBS@
 
 miinitext-wrapper.c:
 	echo "#include \"$(top_srcdir)/mi/miinitext.c\"" >> $@
commit 1022c7774b0a92946e87c61aa79b076a6ffe95ff
Author: Donnie Berkholz <dberkholz at gentoo.org>
Date:   Thu May 8 00:07:57 2008 -0700

    xprint: fix build by adding {New,Delete}InputDeviceRequest.

diff --git a/hw/xprint/ddxInit.c b/hw/xprint/ddxInit.c
index a465c4c..1e7652e 100644
--- a/hw/xprint/ddxInit.c
+++ b/hw/xprint/ddxInit.c
@@ -310,6 +310,17 @@ ChangeDeviceControl (
     return BadMatch;
 }
 
+int
+NewInputDeviceRequest(InputOption *options, DeviceIntPtr *pdev)
+{
+    return BadValue;
+}
+
+void
+DeleteInputDeviceRequest(DeviceIntPtr dev)
+{
+}
+
 void
 OpenInputDevice (
     DeviceIntPtr dev,
commit 9df3886354152250983171825daeb93a6a845369
Author: Donnie Berkholz <dberkholz at gentoo.org>
Date:   Thu May 8 00:06:16 2008 -0700

    xephyr: fix linking by adding pixman and using XSERVER_LIBS.

diff --git a/configure.ac b/configure.ac
index c73f4a7..6145aa2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1814,7 +1814,7 @@ if test "$KDRIVE" = yes; then
        XSDL_INCS="`sdl-config --cflags` $XSERVER_CFLAGS"
     fi
 
-    PKG_CHECK_MODULES(XEPHYR, x11 xext xfont xau xdmcp, [xephyr="yes"], [xephyr="no"])
+    PKG_CHECK_MODULES(XEPHYR, x11 xext xfont xau xdmcp $PIXMAN, [xephyr="yes"], [xephyr="no"])
     if test "x$XEPHYR" = xauto; then
         XEPHYR=$xephyr
     fi
diff --git a/hw/kdrive/ephyr/Makefile.am b/hw/kdrive/ephyr/Makefile.am
index cc3019f..1738d0f 100644
--- a/hw/kdrive/ephyr/Makefile.am
+++ b/hw/kdrive/ephyr/Makefile.am
@@ -28,6 +28,7 @@ Xephyr_LDADD = 						\
 	libxephyr-hostx.a			        \
 	../../../exa/libexa.la				\
 	@KDRIVE_LIBS@					\
+	@XSERVER_LIBS@					\
         @XEPHYR_LIBS@
 
 Xephyr_DEPENDENCIES =	\
commit 6c5c1c5c9819fe9a5f2e2a6995017e414662d6cf
Author: Donnie Berkholz <dberkholz at gentoo.org>
Date:   Thu May 8 00:05:00 2008 -0700

    dmx: link in XSERVER_LIBS.

diff --git a/hw/dmx/Makefile.am b/hw/dmx/Makefile.am
index 002ea11..15dc281 100644
--- a/hw/dmx/Makefile.am
+++ b/hw/dmx/Makefile.am
@@ -87,6 +87,7 @@ Xdmx_LDADD = $(XORG_CORE_LIBS) \
              $(GLX_LIBS) \
              input/libdmxinput.a \
              config/libdmxconfig.a \
+             @XSERVER_LIBS@ \
              @DMXMODULES_LIBS@
 
 # Man page
commit 71f0711f40d825de3f1a7a09de78c6181fb3a521
Author: Donnie Berkholz <dberkholz at gentoo.org>
Date:   Thu May 8 00:04:36 2008 -0700

    dmx: fix build by adding {New,Delete}InputDeviceRequest.

diff --git a/hw/dmx/dmxinput.c b/hw/dmx/dmxinput.c
index d644b5d..83f8a4a 100644
--- a/hw/dmx/dmxinput.c
+++ b/hw/dmx/dmxinput.c
@@ -105,3 +105,14 @@ void dmxUpdateWindowInfo(DMXUpdateType type, WindowPtr pWindow)
         if (!dmxInput->detached && dmxInput->updateWindowInfo)
             dmxInput->updateWindowInfo(dmxInput, type, pWindow);
 }
+
+int
+NewInputDeviceRequest (InputOption *options, DeviceIntPtr *pdev)
+{
+    return BadRequest;
+}
+
+void
+DeleteInputDeviceRequest(DeviceIntPtr pDev)
+{
+}


More information about the xorg-commit mailing list