From 70b4087c4dd1904d9d655f4afb9dfcea4f137f7a Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Mon, 12 Nov 2007 13:10:39 +1030 Subject: [PATCH] dix: don't unconditionally update valuators during key events. Master may not have valuators, device may not have valuators. --- dix/getevents.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/dix/getevents.c b/dix/getevents.c index e366d2223..d9adadf43 100644 --- a/dix/getevents.c +++ b/dix/getevents.c @@ -485,8 +485,11 @@ GetKeyboardValuatorEvents(EventList *events, DeviceIntPtr pDev, int type, { CreateClassesChangedEvent(events, master, pDev); - pDev->valuator->lastx = master->valuator->lastx; - pDev->valuator->lasty = master->valuator->lasty; + if (master->valuator && pDev->valuator) + { + pDev->valuator->lastx = master->valuator->lastx; + pDev->valuator->lasty = master->valuator->lasty; + } master->u.lastSlave = pDev; numEvents++; events++;