Fix bug #16533532 Settings app crashes on device orientation change
...when "change language" warning dialog is on screen
- try harder at getting the parent fragment. First try by calling
getParentFragment() and if this is getting a null reference, try
again by using the fragment Id saved during onSaveInstanceState()
Change-Id: I3dbc6a229224c8770ff2c7e432e76b8796c4b099
diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java
index 097fb95..38344fb 100644
--- a/src/com/android/settings/SettingsPreferenceFragment.java
+++ b/src/com/android/settings/SettingsPreferenceFragment.java
@@ -412,6 +412,9 @@
mDialogId = savedInstanceState.getInt(KEY_DIALOG_ID, 0);
mParentFragment = getParentFragment();
int mParentFragmentId = savedInstanceState.getInt(KEY_PARENT_FRAGMENT_ID, -1);
+ if (mParentFragment == null) {
+ mParentFragment = getFragmentManager().findFragmentById(mParentFragmentId);
+ }
if (!(mParentFragment instanceof DialogCreatable)) {
throw new IllegalArgumentException(
(mParentFragment != null