diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java index f5d7d869049..4796a9e9979 100644 --- a/src/com/android/settings/SettingsPreferenceFragment.java +++ b/src/com/android/settings/SettingsPreferenceFragment.java @@ -690,7 +690,10 @@ public abstract class SettingsPreferenceFragment extends InstrumentedPreferenceF public void finish() { Activity activity = getActivity(); - if (activity != null && !activity.getFragmentManager().popBackStackImmediate()) { + if (activity == null) return; + if (getFragmentManager().getBackStackEntryCount() > 0) { + getFragmentManager().popBackStack(); + } else { activity.finish(); } }