Call onCancelBatchInput only when onStartBatchInput has been called

This NPE issue (Bug: 7903331) has been introduced by Ie68c7698.

Bug: 7903331
Change-Id: I44884f5608fe47d9db7a2c93a752d17b9ae39a22
main
Tadashi G. Takaoka 2012-12-21 14:14:09 +09:00
parent 11bc86adcb
commit 7c1e853387
1 changed files with 4 additions and 3 deletions

View File

@ -791,6 +791,9 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
private void cancelBatchInput() { private void cancelBatchInput() {
sPointerTrackerQueue.cancelAllPointerTracker(); sPointerTrackerQueue.cancelAllPointerTracker();
if (!sInGesture) {
return;
}
sInGesture = false; sInGesture = false;
if (DEBUG_LISTENER) { if (DEBUG_LISTENER) {
Log.d(TAG, String.format("[%d] onCancelBatchInput", mPointerId)); Log.d(TAG, String.format("[%d] onCancelBatchInput", mPointerId));
@ -1208,9 +1211,7 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
printTouchEvent("onCancelEvt:", x, y, eventTime); printTouchEvent("onCancelEvt:", x, y, eventTime);
} }
if (sInGesture) {
cancelBatchInput(); cancelBatchInput();
}
sPointerTrackerQueue.cancelAllPointerTracker(); sPointerTrackerQueue.cancelAllPointerTracker();
sPointerTrackerQueue.releaseAllPointers(eventTime); sPointerTrackerQueue.releaseAllPointers(eventTime);
onCancelEventInternal(); onCancelEventInternal();