From e01cdff09d8df32a42ee76a4c29ec06d5ada8284 Mon Sep 17 00:00:00 2001 From: Alex Cruz Date: Fri, 10 Nov 2017 20:41:55 -0500 Subject: Fix NPE when AOSP ambient display preference is removed AndroidRuntime: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v7.preference.Preference.setOnPreferenceChangeListener(android.support.v7.preference.Preference$OnPreferenceChangeListener)' on a null object reference Change-Id: I6fbea9ec97a1506b707822cdb83469fea8211749 --- .../com/android/settingslib/core/AbstractPreferenceController.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/SettingsLib/src/com/android/settingslib/core/AbstractPreferenceController.java b/packages/SettingsLib/src/com/android/settingslib/core/AbstractPreferenceController.java index 20fe495f1afa..b7dbd23c0e12 100644 --- a/packages/SettingsLib/src/com/android/settingslib/core/AbstractPreferenceController.java +++ b/packages/SettingsLib/src/com/android/settingslib/core/AbstractPreferenceController.java @@ -34,8 +34,10 @@ public abstract class AbstractPreferenceController { setVisible(screen, prefKey, true /* visible */); if (this instanceof Preference.OnPreferenceChangeListener) { final Preference preference = screen.findPreference(prefKey); - preference.setOnPreferenceChangeListener( + if (preference != null) { + preference.setOnPreferenceChangeListener( (Preference.OnPreferenceChangeListener) this); + } } } else { setVisible(screen, prefKey, false /* visible */); -- cgit v1.2.3