diff options
author | Simon Thum <simon.thum@gmx.de> | 2008-09-28 22:32:44 +0930 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@redhat.com> | 2008-10-03 15:27:07 +0930 |
commit | 5ef5e89f0e4b9b8820093e072430e295efce32fa (patch) | |
tree | 38ac53f4f7ec472e428197e0e048d5e3e6f0fb0b /dix | |
parent | 036d424827726b0c804ae1532109253270744207 (diff) |
dix: fix non-initialization of pointer accel in master devices.
Init MDs always with PtrAccelNoOp.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Diffstat (limited to 'dix')
-rw-r--r-- | dix/devices.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/dix/devices.c b/dix/devices.c index f8ae6da24..adb012f4a 100644 --- a/dix/devices.c +++ b/dix/devices.c @@ -1262,7 +1262,9 @@ InitValuatorClassDeviceStruct(DeviceIntPtr dev, int numAxes, } dev->last.numValuators = numAxes; - if(!dev->isMaster) /* master devs do not accelerate */ + if(dev->isMaster) /* master devs do not accelerate */ + InitPointerAccelerationScheme(dev, PtrAccelNoOp); + else InitPointerAccelerationScheme(dev, PtrAccelDefault); return TRUE; } @@ -1289,9 +1291,12 @@ InitPointerAccelerationScheme(DeviceIntPtr dev, val = dev->valuator; - if(!val || dev->isMaster) /* bail out if called for master devs */ + if(!val) return FALSE; + if(dev->isMaster && (scheme != PtrAccelNoOp)) + scheme = PtrAccelNoOp; /* no accel for master devices */ + for(x = 0; pointerAccelerationScheme[x].number >= 0; x++) { if(pointerAccelerationScheme[x].number == scheme){ i = x; |