From 64516a191f03a777896798f79792d39cde9592d7 Mon Sep 17 00:00:00 2001 From: Amith Yamasani Date: Mon, 22 Oct 2012 16:38:02 -0700 Subject: [PATCH] Fixes an AIOOBE when device admin enforces a small timeout for screen lock Bug: 7378871 If the timeout choices are empty, set an empty summary. Change-Id: I20dbe61af56f9c41337a7c284580511322e5a45e --- src/com/android/settings/DisplaySettings.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/com/android/settings/DisplaySettings.java b/src/com/android/settings/DisplaySettings.java index 9f812fe81c..fb839a716a 100644 --- a/src/com/android/settings/DisplaySettings.java +++ b/src/com/android/settings/DisplaySettings.java @@ -154,15 +154,19 @@ public class DisplaySettings extends SettingsPreferenceFragment implements } else { final CharSequence[] entries = preference.getEntries(); final CharSequence[] values = preference.getEntryValues(); - int best = 0; - for (int i = 0; i < values.length; i++) { - long timeout = Long.parseLong(values[i].toString()); - if (currentTimeout >= timeout) { - best = i; + if (entries == null || entries.length == 0) { + summary = ""; + } else { + int best = 0; + for (int i = 0; i < values.length; i++) { + long timeout = Long.parseLong(values[i].toString()); + if (currentTimeout >= timeout) { + best = i; + } } + summary = preference.getContext().getString(R.string.screen_timeout_summary, + entries[best]); } - summary = preference.getContext().getString(R.string.screen_timeout_summary, - entries[best]); } preference.setSummary(summary); } -- 2.11.0