Files
xserver_xsdl/dix
Keith Packard 65dd1ba7b3 dix: Untwist transformAbsolute logic, eliminate uninitialized value warnings
tranformAbsolute has a pretty simple job, that of running the X/Y
values from a device through the transformation matrix. The tricky bit
comes when the current device state doesn't include one of the
values. In that case, the last delivered value is back-converted to
device space and used instead.

The logic was twisted though, confusing GCC's uninitialized value
detection logic and emitting warnings.

This has been fixed by changing the code to:

 1) Detect whether the ValuatorMask includes X/Y values
 2) If either are missing, back-convert the current values into ox/oy
 3) When X/Y are present, set ox/oy to the current value
 4) Transform
 5) Store X/Y values if changed or if they were set before.

Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2014-10-28 20:56:37 -07:00
..
2012-03-21 13:54:42 -07:00
2003-11-14 16:49:22 +00:00
2003-11-14 15:54:54 +00:00
2014-01-12 10:24:11 -08:00
2014-10-08 10:10:39 +02:00
2012-03-21 13:54:42 -07:00
2012-11-19 12:12:23 +10:00
2012-03-21 13:54:42 -07:00
2013-07-23 23:56:58 +01:00
2013-10-31 16:58:16 -07:00
2013-07-23 23:56:58 +01:00
2014-01-12 10:24:11 -08:00
2012-03-22 11:33:42 +10:00