From 3cc5ae6a4f725483612c00fc8bcc2c61607f66a8 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Wed, 18 Jun 2008 16:14:42 +0930 Subject: [PATCH] dix: don't attempt to send Enter/Leave events if we have a keyboard. Dereferencing into dev->valuator could crash the server, although it looks like I could only reproduce this by having a keyboard send an event after it was created and the WM was still replaying. Or so. --- dix/events.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dix/events.c b/dix/events.c index 4e11bda7d..7bd682526 100644 --- a/dix/events.c +++ b/dix/events.c @@ -4583,6 +4583,9 @@ DoEnterLeaveEvents(DeviceIntPtr pDev, WindowPtr toWin, int mode) { + if (!IsPointerDevice(pDev)) + return; + if (fromWin == toWin) return; if (IsParent(fromWin, toWin))