Null check for restoring LoaderManagers am: 100ba76d7a

am: bb2011a2e0

Change-Id: I8afc2a6f4808d1b36c1f2651617793854e799d11
This commit is contained in:
Adam Powell
2016-09-22 22:06:38 +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();