aboutsummaryrefslogtreecommitdiff
path: root/src/evdev.h
diff options
context:
space:
mode:
authorChase Douglas <chase.douglas@canonical.com>2012-06-06 12:07:12 -0700
committerPeter Hutterer <peter.hutterer@who-t.net>2012-07-04 08:21:03 +1000
commitac772cde9469c406564433d6d41416fa2279fbf9 (patch)
treec697a83411e86b0800fb2f4d243ecf6f8d10fb78 /src/evdev.h
parentReport the correct number of touches for MT protocol B devices (diff)
downloadxf86-input-evdev-ac772cde9469c406564433d6d41416fa2279fbf9.tar.gz
xf86-input-evdev-ac772cde9469c406564433d6d41416fa2279fbf9.tar.bz2
xf86-input-evdev-ac772cde9469c406564433d6d41416fa2279fbf9.zip
Fix buffer overrun when populating axis label property array
The axis label property array currently only has enough elements for the non-multitouch axes. This change allocates enough space for all axes, which prevents an array overrun write. This may manifest as stack corruption on some platforms. Signed-off-by: Chase Douglas <chase.douglas@canonical.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 4145fe1c087708bf5d6608e328342282ecb93ab0)
Diffstat (limited to 'src/evdev.h')
-rw-r--r--src/evdev.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/evdev.h b/src/evdev.h
index 309b215..c2f9246 100644
--- a/src/evdev.h
+++ b/src/evdev.h
@@ -153,6 +153,7 @@ typedef struct {
int grabDevice; /* grab the event device? */
int num_vals; /* number of valuators */
+ int num_mt_vals; /* number of multitouch valuators */
int axis_map[max(ABS_CNT, REL_CNT)]; /* Map evdev <axis> to index */
ValuatorMask *vals; /* new values coming in */
ValuatorMask *old_vals; /* old values for calculating relative motion */