diff options
Diffstat (limited to 'xorg-server/dix/getevents.c')
-rw-r--r-- | xorg-server/dix/getevents.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/xorg-server/dix/getevents.c b/xorg-server/dix/getevents.c index eb1563aa4..ca3852a28 100644 --- a/xorg-server/dix/getevents.c +++ b/xorg-server/dix/getevents.c @@ -638,9 +638,12 @@ updateFromMaster(EventListPtr events, DeviceIntPtr dev, int type, int *num_event if (master && master->last.slave != dev)
{
CreateClassesChangedEvent(events, master, dev, type);
- updateSlaveDeviceCoords(master, dev);
+ if (IsPointerDevice(master))
+ {
+ updateSlaveDeviceCoords(master, dev);
+ master->last.numValuators = dev->last.numValuators;
+ }
master->last.slave = dev;
- master->last.numValuators = dev->last.numValuators;
(*num_events)++;
events++;
}
|