diff options
author | Peter Hutterer <peter@cs.unisa.edu.au> | 2007-11-12 13:10:39 +1030 |
---|---|---|
committer | Peter Hutterer <peter@cs.unisa.edu.au> | 2007-11-12 13:10:39 +1030 |
commit | 70b4087c4dd1904d9d655f4afb9dfcea4f137f7a (patch) | |
tree | b22a77a7de8466c883b095ba7e066979a8745011 | |
parent | 23365d28651f7942fdafb889bcbbd019470a4274 (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.c | 7 |
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++; |