diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintErrorDialog.java b/src/com/android/settings/biometrics/fingerprint/FingerprintErrorDialog.java index fa929514173..0fc8670402f 100644 --- a/src/com/android/settings/biometrics/fingerprint/FingerprintErrorDialog.java +++ b/src/com/android/settings/biometrics/fingerprint/FingerprintErrorDialog.java @@ -31,12 +31,18 @@ import com.android.settings.biometrics.BiometricErrorDialog; */ public class FingerprintErrorDialog extends BiometricErrorDialog { public static void showErrorDialog(BiometricEnrollBase host, int errMsgId) { + if (host.isFinishing()) { + return; + } + + final FragmentManager fragmentManager = host.getSupportFragmentManager(); + if (fragmentManager.isDestroyed()) { + return; + } + final CharSequence errMsg = host.getText(getErrorMessage(errMsgId)); final FingerprintErrorDialog dialog = newInstance(errMsg, errMsgId); - final FragmentManager fragmentManager = host.getSupportFragmentManager(); - if (!fragmentManager.isDestroyed()) { - dialog.show(fragmentManager, FingerprintErrorDialog.class.getName()); - } + dialog.show(fragmentManager, FingerprintErrorDialog.class.getName()); } private static int getErrorMessage(int errMsgId) {