diff options
author | Chase Douglas <chase.douglas@canonical.com> | 2012-06-06 12:07:12 -0700 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2012-06-07 11:31:57 +1000 |
commit | 4145fe1c087708bf5d6608e328342282ecb93ab0 (patch) | |
tree | ad3b6f9233cee9f7c876a65c5567745155794252 /src/evdev.h | |
parent | Report the correct number of touches for MT protocol B devices (diff) | |
download | xf86-input-evdev-4145fe1c087708bf5d6608e328342282ecb93ab0.tar.gz xf86-input-evdev-4145fe1c087708bf5d6608e328342282ecb93ab0.tar.bz2 xf86-input-evdev-4145fe1c087708bf5d6608e328342282ecb93ab0.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>
Diffstat (limited to 'src/evdev.h')
-rw-r--r-- | src/evdev.h | 1 |
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 */ |