From 50169a920c2b58dcab7a1801682099d359407d36 Mon Sep 17 00:00:00 2001 From: minaripenguin Date: Tue, 3 Dec 2024 08:37:09 +0800 Subject: [PATCH] TopLevelSettings: Fix null pointer crash on high dpi devices * reference issue: https://github.com/RisingTechOSS/issue_tracker/issues/49 cc: mnri --- .../android/settings/homepage/TopLevelSettings.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/com/android/settings/homepage/TopLevelSettings.java b/src/com/android/settings/homepage/TopLevelSettings.java index dbd9ba90031..e8206b84715 100644 --- a/src/com/android/settings/homepage/TopLevelSettings.java +++ b/src/com/android/settings/homepage/TopLevelSettings.java @@ -54,6 +54,7 @@ import com.android.settings.overlay.FeatureFactory; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.support.SupportPreferenceController; import com.android.settings.widget.HomepagePreference; +import com.android.settings.widget.HomepagePreferenceLayoutHelper; import com.android.settings.widget.HomepagePreferenceLayoutHelper.HomepagePreferenceLayout; import com.android.settingslib.core.instrumentation.Instrumentable; import com.android.settingslib.drawer.Tile; @@ -290,10 +291,11 @@ public class TopLevelSettings extends DashboardFragment implements SplitLayoutLi @Override public void doForEach(Preference preference) { if (preference instanceof HomepagePreferenceLayout) { - ((HomepagePreferenceLayout) preference).getHelper() - .setIconPaddingStart(mIconPaddingStart); - ((HomepagePreferenceLayout) preference).getHelper() - .setTextPaddingStart(mTextPaddingStart); + HomepagePreferenceLayoutHelper helper = ((HomepagePreferenceLayout) preference).getHelper(); + if (helper != null) { + helper.setIconPaddingStart(mIconPaddingStart); + helper.setTextPaddingStart(mTextPaddingStart); + } } } });