Improve error message to figure out which fragment class is problematic.
Bug: 8057867
Change-Id: I6ad0bc8c8a6ed9bc8a1cca5debffe15c6de3a1b5
diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java
index b418826..42c0b40 100644
--- a/src/com/android/settings/SettingsPreferenceFragment.java
+++ b/src/com/android/settings/SettingsPreferenceFragment.java
@@ -233,8 +233,11 @@
mParentFragment = getFragmentManager().findFragmentById(mParentFragmentId);
if (!(mParentFragment instanceof DialogCreatable)) {
throw new IllegalArgumentException(
- KEY_PARENT_FRAGMENT_ID + " must implement "
- + DialogCreatable.class.getName());
+ (mParentFragment != null
+ ? mParentFragment.getClass().getName()
+ : mParentFragmentId)
+ + " must implement "
+ + DialogCreatable.class.getName());
}
}
// This dialog fragment could be created from non-SettingsPreferenceFragment