summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter@cs.unisa.edu.au>2007-11-12 13:10:39 +1030
committerPeter Hutterer <peter@cs.unisa.edu.au>2007-11-12 13:10:39 +1030
commit70b4087c4dd1904d9d655f4afb9dfcea4f137f7a (patch)
treeb22a77a7de8466c883b095ba7e066979a8745011
parent23365d28651f7942fdafb889bcbbd019470a4274 (diff)
dix: don't unconditionally update valuators during key events.
Master may not have valuators, device may not have valuators.
-rw-r--r--dix/getevents.c7
1 files 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++;