Null check for restoring LoaderManagers

am: 100ba76d7a

Change-Id: I7b5eecf24d73fd62abaa2825374bd936f15425e5
This commit is contained in:
Adam Powell
2016-09-22 20:38:00 +00:00
committed by android-build-merger
2 changed files with 7 additions and 2 deletions

View File

@ -340,8 +340,10 @@ public abstract class FragmentHostCallback<E> extends FragmentContainer {
}
void restoreLoaderNonConfig(ArrayMap<String, LoaderManager> loaderManagers) {
for (int i = 0, N = loaderManagers.size(); i < N; i++) {
((LoaderManagerImpl) loaderManagers.valueAt(i)).updateHostController(this);
if (loaderManagers != null) {
for (int i = 0, N = loaderManagers.size(); i < N; i++) {
((LoaderManagerImpl) loaderManagers.valueAt(i)).updateHostController(this);
}
}
mAllLoaderManagers = loaderManagers;
}

View File

@ -99,6 +99,9 @@ public class LoaderLifecycleTest {
final FragmentManager fm2 = fc2.getFragmentManager();
fc2.attachHost(null);
// Make sure nothing blows up on a null here
fc2.restoreLoaderNonConfig(null);
// for real this time
fc2.restoreLoaderNonConfig(loaderNonConfig);
fc2.restoreAllState(savedState, nonconf);
fc2.dispatchCreate();