xserver: Branch 'server-1.7-branch' - 3 commits

Peter Hutterer whot at kemper.freedesktop.org
Thu Jan 7 17:08:18 PST 2010


 configure.ac       |    4 ++--
 dix/devices.c      |    6 +++---
 include/eventstr.h |    4 ----
 3 files changed, 5 insertions(+), 9 deletions(-)

New commits:
commit 88582f3d41315abf548a52622e52b7652d2c5281
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date:   Fri Jan 8 09:38:58 2010 +1000

    xserver 1.7.4
    
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>

diff --git a/configure.ac b/configure.ac
index 10cf26f..c564cf9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,8 +26,8 @@ dnl
 dnl Process this file with autoconf to create configure.
 
 AC_PREREQ(2.57)
-AC_INIT([xorg-server], 1.7.3.902, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
-RELEASE_DATE="2009-12-26"
+AC_INIT([xorg-server], 1.7.4, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server)
+RELEASE_DATE="2010-01-08"
 AC_CONFIG_SRCDIR([Makefile.am])
 AM_INIT_AUTOMAKE([dist-bzip2 foreign])
 AM_MAINTAINER_MODE
commit e54309e2ec1d16eb5570fad60af9be31f710c852
Author: Adam Tkac <atkac at redhat.com>
Date:   Thu Jan 7 15:34:52 2010 +0100

    Do not define members of include/eventstr.h:EventType enum conditionally.
    
    Main problem is that EventType enumeration members can be different in
    module and in server, which obviously causes problems.
    
    Signed-off-by: Adam Tkac <atkac at redhat.com>
    Reviewed-by: Adam Jackson <ajax at redhat.com>
    Signed-off-by: Keith Packard <keithp at keithp.com>
    (cherry picked from commit 8d53d84485fdce8ea9686e6f300a69f7ddebd467)

diff --git a/include/eventstr.h b/include/eventstr.h
index 0d5b1c6..79685c1 100644
--- a/include/eventstr.h
+++ b/include/eventstr.h
@@ -58,17 +58,13 @@ enum EventType {
     ET_ProximityOut,
     ET_DeviceChanged,
     ET_Hierarchy,
-#if XFreeXDGA
     ET_DGAEvent,
-#endif
     ET_RawKeyPress,
     ET_RawKeyRelease,
     ET_RawButtonPress,
     ET_RawButtonRelease,
     ET_RawMotion,
-#ifdef XQUARTZ
     ET_XQuartz,
-#endif
     ET_Internal = 0xFF /* First byte */
 };
 
commit 8661189c2c443e2d3e5d98e6b04d1852a98bac41
Author: Alan Coopersmith <alan.coopersmith at sun.com>
Date:   Mon Jan 4 18:21:54 2010 -0800

    CloseDevice: call XkbRemoveResourceClient before freeing key class struct
    
    XkbRemoveResourceClient() returns immediately if dev->key is NULL.
    CloseDevice calls XkbRemoveResourceClient until it removes all resources.
    
    If we free dev->key and NULL it before XkbRemoveResourceClient, then
    infinite loop ensues, and the server appears to hang on exit or crash.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith at sun.com>
    Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>
    Reviewed-by: Daniel Stone <daniel at fooishbar.org>
    Signed-off-by: Keith Packard <keithp at keithp.com>
    (cherry picked from commit 13c8bd3fde3b0831921e59f84936022a16379d63)

diff --git a/dix/devices.c b/dix/devices.c
index e3fd456..245a95b 100644
--- a/dix/devices.c
+++ b/dix/devices.c
@@ -843,6 +843,9 @@ CloseDevice(DeviceIntPtr dev)
     if(dev->valuator && dev->valuator->accelScheme.AccelCleanupProc)
 	dev->valuator->accelScheme.AccelCleanupProc(dev);
 
+    while (dev->xkb_interest)
+	XkbRemoveResourceClient((DevicePtr)dev,dev->xkb_interest->resource);
+
     xfree(dev->name);
 
     classes = (ClassesPtr)&dev->key;
@@ -854,9 +857,6 @@ CloseDevice(DeviceIntPtr dev)
         FreeAllDeviceClasses(classes);
     }
 
-    while (dev->xkb_interest)
-	XkbRemoveResourceClient((DevicePtr)dev,dev->xkb_interest->resource);
-
     if (DevHasCursor(dev) && dev->spriteInfo->sprite) {
         xfree(dev->spriteInfo->sprite->spriteTrace);
         xfree(dev->spriteInfo->sprite);


More information about the xorg-commit mailing list