If any part of the stack calls XIGetKnownProperty during device shutdown the property is re-initialized before the server generation resets, leaving the value invalid again.
Move the reset to the extension init which happens before input devices are initialized before the first property is requested. Signed-off-by: Peter Hutterer <[email protected]> --- sorry... Xi/extinit.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Xi/extinit.c b/Xi/extinit.c index eda4efb..fb8ad19 100644 --- a/Xi/extinit.c +++ b/Xi/extinit.c @@ -1120,8 +1120,6 @@ RestoreExtensionEvents(void) static void IResetProc(ExtensionEntry * unused) { - XIResetProperties(); - ReplySwapVector[IReqCode] = ReplyNotSwappd; EventSwapVector[DeviceValuator] = NotImplemented; EventSwapVector[DeviceKeyPress] = NotImplemented; @@ -1302,6 +1300,8 @@ XInputExtensionInit(void) inputInfo.all_devices = &xi_all_devices; inputInfo.all_master_devices = &xi_all_master_devices; + + XIResetProperties(); } else { FatalError("IExtensionInit: AddExtensions failed\n"); } -- 1.6.5.2 _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
