Created attachment 61167 [details]
gdb backtrace from Jakub Wilk
crash with X 1.12 at exit time, with current server-1.12-branch, due to:
Author: Peter Hutterer <email@example.com>
Date: Mon Apr 30 10:01:48 2012 +1000
dix: when disabling a device, release all buttons and keys
A suspend-induced device disable may happen before the device gets to see
the button release event. On resume, the server's internal state still has
some buttons pressed, causing inconsistent behaviour.
Force the release and the matching events to be sent to the client.
Signed-off-by: Peter Hutterer <firstname.lastname@example.org>
Reviewed-by: Chase Douglas <email@example.com>
(cherry picked from commit f3410b97cf9b48a47bee3d15d232f8a88e75f4ef)
Indeed, as Julien mentioned on IRC, the codepath looks like it, and a revert on top of 22a1953c4a2747d637bb926034f11134809b8d06 makes my 1.12 branch stop crashing.
Full backtrace attached, but also available in:
Reverted as of: xorg-server-22.214.171.1242~2
Author: Jeremy Huddleston <firstname.lastname@example.org>
Date: Thu May 10 00:53:20 2012 -0700
Revert "dix: when disabling a device, release all buttons and keys"
This reverts commit 90299556db24543bb7365e8c2897deca3aa219e7.
The commit being reverted triggered a segfault on server shutdown when a
device posts raw events after the root windows are forced to NULL.
Signed-off-by: Jeremy Huddleston <email@example.com>