Fix crash when BiometricPrompt requests swipe pattern and talk back is enabled.

The view id can be Integer.MAX_VALUE, which causes the crash.

Fix: 185164902
Test: manual
Change-Id: Id51357f4cfa52cdd27d7dbd235fbd154b1031624
This commit is contained in:
Joe Bolinger
2021-06-21 15:40:34 -07:00
parent 891f3034ea
commit a16f4f21b2

View File

@@ -1524,7 +1524,9 @@ public class LockPatternView extends View {
if (virtualViewId != ExploreByTouchHelper.INVALID_ID) {
int row = (virtualViewId - VIRTUAL_BASE_VIEW_ID) / 3;
int col = (virtualViewId - VIRTUAL_BASE_VIEW_ID) % 3;
return !mPatternDrawLookup[row][col];
if (row < 3) {
return !mPatternDrawLookup[row][col];
}
}
return false;
}
@@ -1570,7 +1572,6 @@ public class LockPatternView extends View {
final Rect bounds = mTempRect;
final int row = ordinal / 3;
final int col = ordinal % 3;
final CellState cell = mCellStates[row][col];
float centerX = getCenterXForColumn(col);
float centerY = getCenterYForRow(row);
float cellheight = mSquareHeight * mHitFactor * 0.5f;