From 8b2baed2be04b4a8973bdd0bd404216b65c64452 Mon Sep 17 00:00:00 2001 From: Fan Zhang Date: Mon, 3 Oct 2016 09:05:55 -0700 Subject: [PATCH] Fix a NPE in confirm lock screen. The NPE happens is when using pin later. It's too late to recover if we just catch the NPE where it happens, so we should early terminate the call by adding TextUtil.isEmpty(pin) check. Change-Id: Id280cd1b8781678540c9ea281b3186edd04d61f9 Fixes: 31895774 Test: make RunSettingsRoboTests Test: manually enter correct/wrong/empty password/pin in confirm lock UI (cherry picked from commit 774e1d8443fa551bdcfb54de2fd478db42e70a16) --- src/com/android/settings/ConfirmLockPassword.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/ConfirmLockPassword.java b/src/com/android/settings/ConfirmLockPassword.java index 4797012178f..01e99022329 100644 --- a/src/com/android/settings/ConfirmLockPassword.java +++ b/src/com/android/settings/ConfirmLockPassword.java @@ -320,11 +320,15 @@ public class ConfirmLockPassword extends ConfirmDeviceCredentialBaseActivity { return; } - mPasswordEntryInputDisabler.setInputEnabled(false); - final String pin = mPasswordEntry.getText().toString(); + if (TextUtils.isEmpty(pin)) { + return; + } + + mPasswordEntryInputDisabler.setInputEnabled(false); final boolean verifyChallenge = getActivity().getIntent().getBooleanExtra( ChooseLockSettingsHelper.EXTRA_KEY_HAS_CHALLENGE, false); + Intent intent = new Intent(); if (verifyChallenge) { if (isInternalActivity()) {