add number constraint for samples per MotionEvent am: 5d17838ade

am: 72c8ca4a01

* commit '72c8ca4a0191827fd3265c0820b685a6cf420be1':
  add number constraint for samples per MotionEvent
This commit is contained in:
Flanker 2015-10-22 02:04:55 +00:00 committed by android-build-merger
commit 9964d83869
2 changed files with 7 additions and 1 deletions

View File

@ -110,6 +110,11 @@ enum {
*/ */
#define MAX_POINTERS 16 #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. * Maximum pointer id value supported in a motion event.
* Smallest pointer id is 0. * Smallest pointer id is 0.

View File

@ -421,7 +421,8 @@ void MotionEvent::transform(const float matrix[9]) {
status_t MotionEvent::readFromParcel(Parcel* parcel) { status_t MotionEvent::readFromParcel(Parcel* parcel) {
size_t pointerCount = parcel->readInt32(); size_t pointerCount = parcel->readInt32();
size_t sampleCount = 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; return BAD_VALUE;
} }