xserver: Branch 'server-1.7-nominations' - 2 commits

Peter Hutterer whot at kemper.freedesktop.org
Sun Dec 13 19:51:56 PST 2009


 Xi/xiproperty.c |    2 ++
 xkb/xkbLEDs.c   |   12 +++++++-----
 2 files changed, 9 insertions(+), 5 deletions(-)

New commits:
commit df842009a99100d81c645fa2877a3a67a42b2563
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date:   Thu Dec 3 11:21:31 2009 +1000

    Xi: reset device properties to NULL after deleting them. (#25374)
    
    Commit 0e6cee853d8e5bef3274e632ef034d37f14674a9 introduced cleanup code to
    remove the accel properties when switching schemes. The same code is
    triggered by the default closedown code but only after unconditionally
    removing all device properties (as part of the cleanup). The properties,
    although deleted never got reset to NULL.
    
    X.Org Bug 25374 <http://bugs.freedesktop.org/show_bug.cgi?id=25374>
    
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
    Tested-by: Andy Furniss <lists at andyfurniss.entadsl.com>
    Reviewed-by: Dave Airlie <airlied at redhat.com>
    (cherry picked from commit ea14a418214ba4c58910f5650d8b25b3fc3a7099)

diff --git a/Xi/xiproperty.c b/Xi/xiproperty.c
index ecb326e..ea66c54 100644
--- a/Xi/xiproperty.c
+++ b/Xi/xiproperty.c
@@ -622,6 +622,8 @@ XIDeleteAllDeviceProperties (DeviceIntPtr device)
         XIDestroyDeviceProperty(prop);
     }
 
+    device->properties.properties = NULL;
+
     /* Now free all handlers */
     curr_handler = device->properties.handlers;
     while(curr_handler)
commit d55009f87fca7e2e160901af4755311cc6b0431f
Author: Tomas Carnecky <tom at dbservice.com>
Date:   Mon Dec 7 05:54:57 2009 +0100

    Fix possible NULL dereference in XkbFlushLedEvents()
    
    Through some code paths it is possible that NULL is being passed in the
    'ed' parameter to XkbFlushLedEvents(). Make sure we don't pass it along
    to bzero().
    
    Signed-off-by: Tomas Carnecky <tom at dbservice.com>
    Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>
    Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
    (cherry picked from commit 886140787852c660978a9bb3abc7cc2702cbaed1)

diff --git a/xkb/xkbLEDs.c b/xkb/xkbLEDs.c
index 59cdba4..6ca80d7 100644
--- a/xkb/xkbLEDs.c
+++ b/xkb/xkbLEDs.c
@@ -745,12 +745,14 @@ XkbFlushLedEvents(	DeviceIntPtr			dev,
 			XkbDDXAccessXBeep(dev, _BEEP_LED_OFF, XkbAccessXFeedbackMask);
 	}
     }
-    if (ed && (ed->reason)) {
-	if ((dev!=kbd)&&(ed->reason&XkbXI_IndicatorStateMask))
-	    XkbDDXUpdateDeviceIndicators(dev,sli,sli->effectiveState);
-	XkbSendExtensionDeviceNotify(dev,cause->client,ed);
+    if (ed) {
+	if (ed->reason) {
+	    if ((dev!=kbd)&&(ed->reason&XkbXI_IndicatorStateMask))
+		XkbDDXUpdateDeviceIndicators(dev,sli,sli->effectiveState);
+	    XkbSendExtensionDeviceNotify(dev,cause->client,ed);
+	}
+	bzero((char *)ed,sizeof(XkbExtensionDeviceNotify));
     }
-    bzero((char *)ed,sizeof(XkbExtensionDeviceNotify));
     return;
 }
 


More information about the xorg-commit mailing list