diff options
author | Gabriele M <moto.falcon.git@gmail.com> | 2016-02-17 10:03:37 +0100 |
---|---|---|
committer | Arne Coucheron <arco68@gmail.com> | 2018-01-26 01:03:22 +0100 |
commit | 61e22da3f3cddd5d99414354785d7f7ebeb4712a (patch) | |
tree | 0dea4fb9d390fceb42f818b563e73459fb557161 /src | |
parent | 4e685e15c78e944edc937a616a338dff809c240d (diff) | |
download | android_packages_apps_Snap-61e22da3f3cddd5d99414354785d7f7ebeb4712a.tar.gz android_packages_apps_Snap-61e22da3f3cddd5d99414354785d7f7ebeb4712a.tar.bz2 android_packages_apps_Snap-61e22da3f3cddd5d99414354785d7f7ebeb4712a.zip |
Snap: Don't crash if user saved preference is not valid
If the user sets some preference value that is later removed, Snap will
crash because of on an ArrayIndexOutOfBoundsException. Make sure this
doesn't happen.
Change-Id: I629acebaf762f49f05dc1bfa0542f11979ae269d
Diffstat (limited to 'src')
-rwxr-xr-x | src/com/android/camera/ListPreference.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/com/android/camera/ListPreference.java b/src/com/android/camera/ListPreference.java index ae37356e1..05ab10f07 100755 --- a/src/com/android/camera/ListPreference.java +++ b/src/com/android/camera/ListPreference.java @@ -184,7 +184,11 @@ public class ListPreference extends CameraPreference { } public String getLabel() { - return mLabels[findIndexOfValue(getValue())].toString(); + int index = findIndexOfValue(getValue()); + if (index < 0) { + return findSupportedDefaultValue(); + } + return mLabels[index].toString(); } protected void persistStringValue(String value) { |