Merge "Settings crashed when changing the Screen Resolution" into udc-d1-dev
diff --git a/src/com/android/settings/display/ScreenResolutionFragment.java b/src/com/android/settings/display/ScreenResolutionFragment.java
index de7d25f..daf1793 100644
--- a/src/com/android/settings/display/ScreenResolutionFragment.java
+++ b/src/com/android/settings/display/ScreenResolutionFragment.java
@@ -369,6 +369,12 @@
 
         private void restoreDensity() {
             final DisplayDensityUtils density = new DisplayDensityUtils(mContext);
+            /* If current density is the same as a default density of other resolutions,
+             * then mCurrentIndex may be out of boundary.
+             */
+            if (density.getDefaultDisplayDensityValues().length <= mCurrentIndex) {
+                mCurrentIndex = density.getCurrentIndexForDefaultDisplay();
+            }
             if (density.getDefaultDisplayDensityValues()[mCurrentIndex]
                     != density.getDefaultDensityForDefaultDisplay()) {
                 density.setForcedDisplayDensity(mCurrentIndex);