From d5a3c5373315e1eefe0f0312aa19007313461634 Mon Sep 17 00:00:00 2001 From: Jim Miller Date: Thu, 6 Apr 2017 18:08:10 -0700 Subject: [PATCH] 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 --- src/com/android/settings/fingerprint/FingerprintSettings.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/com/android/settings/fingerprint/FingerprintSettings.java b/src/com/android/settings/fingerprint/FingerprintSettings.java index 0f48f8c0b10..dc6616a2ce1 100644 --- a/src/com/android/settings/fingerprint/FingerprintSettings.java +++ b/src/com/android/settings/fingerprint/FingerprintSettings.java @@ -360,6 +360,8 @@ public class FingerprintSettings extends SubSettings { } 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);