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