Merge "add number constraint for samples per MotionEvent" into mnc-dr-dev

This commit is contained in:
Adam Lesinski 2015-10-12 22:15:50 +00:00 committed by Android (Google) Code Review
commit 16b0ae105e
2 changed files with 7 additions and 1 deletions

View File

@ -110,6 +110,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.

View File

@ -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;
}