If the keycode range exceeds the allowable length, memory gets overwritten. Catch this case by making sure that only allowed class types are present.
X.Org Bug 25492 <http://bugs.freedesktop.org/show_bug.cgi?id=25492> Signed-off-by: Peter Hutterer <[email protected]> --- This is the reason why the test didn't fail on x86. test/xi2/protocol-eventconvert.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/test/xi2/protocol-eventconvert.c b/test/xi2/protocol-eventconvert.c index 66686cb..f20a10a 100644 --- a/test/xi2/protocol-eventconvert.c +++ b/test/xi2/protocol-eventconvert.c @@ -736,6 +736,9 @@ static void test_values_XIDeviceChangedEvent(DeviceChangedEvent *in, } break; + default: + g_error("Invalid class type.\n"); + break; } ptr += any->length * 4; -- 1.6.5.2 _______________________________________________ xorg-devel mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-devel
