summaryrefslogtreecommitdiffstats
path: root/core/java/android/view
diff options
context:
space:
mode:
authorOwen Lin <owenlin@google.com>2009-07-29 21:26:18 +0800
committerOwen Lin <owenlin@google.com>2009-07-29 21:27:08 +0800
commit18a081e68441a098fe0a1a6283439913cfb6b0ca (patch)
tree8b03ac8ab87a189d6b84fd71f0ff173a5a1e7a57 /core/java/android/view
parent59e2ad93bf37c7ded44c033d38fe7c972e2f4118 (diff)
downloadframeworks_base-18a081e68441a098fe0a1a6283439913cfb6b0ca.zip
frameworks_base-18a081e68441a098fe0a1a6283439913cfb6b0ca.tar.gz
frameworks_base-18a081e68441a098fe0a1a6283439913cfb6b0ca.tar.bz2
Fix OOB in arraycopy.
Diffstat (limited to 'core/java/android/view')
-rw-r--r--core/java/android/view/MotionEvent.java4
1 files changed, 2 insertions, 2 deletions
diff --git a/core/java/android/view/MotionEvent.java b/core/java/android/view/MotionEvent.java
index d46660c..ae84e1e 100644
--- a/core/java/android/view/MotionEvent.java
+++ b/core/java/android/view/MotionEvent.java
@@ -516,14 +516,14 @@ public final class MotionEvent implements Parcelable {
}
final int NS = (ev.mNumPointers=o.mNumPointers) * NT;
- if (ev.mStateSamples.length < NS) {
+ if (ev.mStateSamples.length >= NS) {
System.arraycopy(o.mStateSamples, 0, ev.mStateSamples, 0, NS);
} else {
ev.mStateSamples = (int[])o.mStateSamples.clone();
}
final int ND = NS * NUM_SAMPLE_DATA;
- if (ev.mDataSamples.length < ND) {
+ if (ev.mDataSamples.length >= ND) {
System.arraycopy(o.mDataSamples, 0, ev.mDataSamples, 0, ND);
} else {
ev.mDataSamples = (float[])o.mDataSamples.clone();