xserver: Branch 'master' - 2 commits

Peter Hutterer whot at kemper.freedesktop.org
Tue Apr 14 19:30:22 PDT 2009


 hw/xfree86/common/xf86Config.c |    3 ++-
 hw/xfree86/common/xf86Xinput.c |    1 +
 2 files changed, 3 insertions(+), 1 deletion(-)

New commits:
commit efa31092d6703397121a0ada4f7205a8ecad3d3d
Author: Ander Conselvan de Oliveira <ander at mandriva.com.br>
Date:   Mon Apr 6 16:01:20 2009 -0300

    xfree86: Remove device from inputInfo.devices if ActivateDevice failed.
    
    After the call to xf86ActivateDevice, the new device will be added to
    inputInfo.devices. However, if the subsequent call to ActivateDevice
    fails, the correponding InputInfoRec for the device is deleted but an
    entry still remains in inputInfo.devices. This might lead to a server
    crash later on (on InitAndStartDevices for instance) when the device
    control proc would be called for an invalid device.
    
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>

diff --git a/hw/xfree86/common/xf86Xinput.c b/hw/xfree86/common/xf86Xinput.c
index 96aff15..a035fca 100644
--- a/hw/xfree86/common/xf86Xinput.c
+++ b/hw/xfree86/common/xf86Xinput.c
@@ -548,6 +548,7 @@ xf86NewInputDevice(IDevPtr idev, DeviceIntPtr *pdev, BOOL enable)
     if (rval != Success)
     {
         xf86Msg(X_ERROR, "Couldn't init device \"%s\"\n", idev->identifier);
+        RemoveDevice(dev);
         goto unwind;
     }
 
commit d79bad0aa70403ead8ec87bac8463a6e2005802c
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date:   Mon Apr 13 17:49:00 2009 +1000

    xfree86: don't synthesise a mouse section if synaptics devices are found.
    
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>

diff --git a/hw/xfree86/common/xf86Config.c b/hw/xfree86/common/xf86Config.c
index 7da85ea..7ea6197 100644
--- a/hw/xfree86/common/xf86Config.c
+++ b/hw/xfree86/common/xf86Config.c
@@ -1282,7 +1282,8 @@ checkCoreInputDevices(serverLayoutPtr servlayoutp, Bool implicitLayout)
      */
     for (devs = servlayoutp->inputs; devs && *devs; devs++) {
 	if (!strcmp((*devs)->driver, "void") || !strcmp((*devs)->driver, "mouse") ||
-            !strcmp((*devs)->driver, "vmmouse") || !strcmp((*devs)->driver, "evdev")) {
+            !strcmp((*devs)->driver, "vmmouse") || !strcmp((*devs)->driver, "evdev") ||
+            !strcmp((*devs)->driver, "synaptics")) {
 	    found = 1; break;
 	}
     }


More information about the xorg-commit mailing list