diff options
author | Jason Chiu <chiujason@google.com> | 2021-06-29 21:10:32 +0800 |
---|---|---|
committer | Jason Chiu <chiujason@google.com> | 2021-06-30 18:33:59 +0800 |
commit | c38978f3e14490d1a87f40b03445b4b2f4db8a18 (patch) | |
tree | 9cbd77e74f2d1e3d2a729971f28dcd9c3f64899e /src/com/android/settings/SettingsActivity.java | |
parent | baecf00ce2fa5a1f412242a3730aae2c5472372a (diff) | |
download | packages_apps_Settings-c38978f3e14490d1a87f40b03445b4b2f4db8a18.tar.gz packages_apps_Settings-c38978f3e14490d1a87f40b03445b4b2f4db8a18.tar.bz2 packages_apps_Settings-c38978f3e14490d1a87f40b03445b4b2f4db8a18.zip |
Guard against the exceptions when launching a non-existing fragment
Test: robotest
Bug: 190371550
Change-Id: I2bb7d4bdb23756634526db7e272563a1587c9640
Diffstat (limited to 'src/com/android/settings/SettingsActivity.java')
-rw-r--r-- | src/com/android/settings/SettingsActivity.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java index 12f63ea226..f3cdd6c164 100644 --- a/src/com/android/settings/SettingsActivity.java +++ b/src/com/android/settings/SettingsActivity.java @@ -574,7 +574,7 @@ public class SettingsActivity extends SettingsBaseActivity /** * Switch to a specific Fragment with taking care of validation, Title and BackStack */ - private Fragment switchToFragment(String fragmentName, Bundle args, boolean validate, + private void switchToFragment(String fragmentName, Bundle args, boolean validate, int titleResId, CharSequence title) { Log.d(LOG_TAG, "Switching to fragment " + fragmentName); if (validate && !isValidFragment(fragmentName)) { @@ -582,6 +582,9 @@ public class SettingsActivity extends SettingsBaseActivity + fragmentName); } Fragment f = Utils.getTargetFragment(this, fragmentName, args); + if (f == null) { + return; + } FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); transaction.replace(R.id.main_content, f); if (titleResId > 0) { @@ -592,7 +595,6 @@ public class SettingsActivity extends SettingsBaseActivity transaction.commitAllowingStateLoss(); getSupportFragmentManager().executePendingTransactions(); Log.d(LOG_TAG, "Executed frag manager pendingTransactions"); - return f; } private void updateTilesList() { |