Don't crash if we get a onRemove() callback from Fingerprint
Before this fix, it was possible to get a callback after the activity
finishes. This just ensures the operation is a no-op.
Fixes bug 37106041
Test: remove all but last fingerprint and hit back while rotating; check that
Settings doesn't crash.
Change-Id: I99df4f7c06e345d1ed6041a75606b0cc43edb300
diff --git a/src/com/android/settings/fingerprint/FingerprintSettings.java b/src/com/android/settings/fingerprint/FingerprintSettings.java
index 0f48f8c..dc6616a 100644
--- a/src/com/android/settings/fingerprint/FingerprintSettings.java
+++ b/src/com/android/settings/fingerprint/FingerprintSettings.java
@@ -360,6 +360,8 @@
}
private void updateAddPreference() {
+ if (getActivity() == null) return; // Activity went away
+
/* Disable preference if too many fingerprints added */
final int max = getContext().getResources().getInteger(
com.android.internal.R.integer.config_fingerprintMaxTemplatesPerUser);