diff options
author | Adam Lesinski <adamlesinski@google.com> | 2015-10-12 22:30:10 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-10-12 22:30:10 +0000 |
commit | 5bba4236a86bbf4537bc27810803b9b224b0840f (patch) | |
tree | 2caa1a29392bf7b8f5b5c86871c7b509eec226ab | |
parent | 7b2b968db484118668b70d040464f379a7e9e915 (diff) | |
parent | 76fc5f18e6a0271a1f04db54924653faac73912e (diff) | |
download | frameworks_native-5bba4236a86bbf4537bc27810803b9b224b0840f.zip frameworks_native-5bba4236a86bbf4537bc27810803b9b224b0840f.tar.gz frameworks_native-5bba4236a86bbf4537bc27810803b9b224b0840f.tar.bz2 |
am 76fc5f18: am 16b0ae10: Merge "add number constraint for samples per MotionEvent" into mnc-dr-dev
* commit '76fc5f18e6a0271a1f04db54924653faac73912e':
add number constraint for samples per MotionEvent
-rw-r--r-- | include/input/Input.h | 5 | ||||
-rw-r--r-- | libs/input/Input.cpp | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/include/input/Input.h b/include/input/Input.h index 4a67f47..92b3d36 100644 --- a/include/input/Input.h +++ b/include/input/Input.h @@ -111,6 +111,11 @@ enum { #define MAX_POINTERS 16 /* + * Maximum number of samples supported per motion event. + */ +#define MAX_SAMPLES UINT16_MAX + +/* * Maximum pointer id value supported in a motion event. * Smallest pointer id is 0. * (This is limited by our use of BitSet32 to track pointer assignments.) diff --git a/libs/input/Input.cpp b/libs/input/Input.cpp index 2c1418e..b64cb2c 100644 --- a/libs/input/Input.cpp +++ b/libs/input/Input.cpp @@ -424,7 +424,8 @@ void MotionEvent::transform(const float matrix[9]) { status_t MotionEvent::readFromParcel(Parcel* parcel) { size_t pointerCount = parcel->readInt32(); size_t sampleCount = parcel->readInt32(); - if (pointerCount == 0 || pointerCount > MAX_POINTERS || sampleCount == 0) { + if (pointerCount == 0 || pointerCount > MAX_POINTERS || + sampleCount == 0 || sampleCount > MAX_SAMPLES) { return BAD_VALUE; } |