Fix NPE due to invalid RecentsView access
Fixes: 288829919
Test: N/a, reorganizing code behind null check
Change-Id: I9efe48cab239b521f7e729af06706c352be2499c
diff --git a/quickstep/src/com/android/quickstep/views/TaskView.java b/quickstep/src/com/android/quickstep/views/TaskView.java
index 17d83ec..83a5c72 100644
--- a/quickstep/src/com/android/quickstep/views/TaskView.java
+++ b/quickstep/src/com/android/quickstep/views/TaskView.java
@@ -841,17 +841,20 @@
// the actual overview state
failureListener.register(mActivity, mTask.key.id, () -> {
notifyTaskLaunchFailed(TAG);
- // Disable animations for now, as it is an edge case and the app usually covers
- // launcher and also any state transition animation also gets clobbered by
- // QuickstepTransitionManager.createWallpaperOpenAnimations when launcher
- // shows again
- getRecentsView().startHome(false /* animated */);
RecentsView rv = getRecentsView();
- if (rv != null && rv.mSizeStrategy.getTaskbarController() != null) {
- // LauncherTaskbarUIController depends on the launcher state when checking
- // whether to handle resume, but that can come in before startHome() changes
- // the state, so force-refresh here to ensure the taskbar is updated
- rv.mSizeStrategy.getTaskbarController().refreshResumedState();
+ if (rv != null) {
+ // Disable animations for now, as it is an edge case and the app usually
+ // covers launcher and also any state transition animation also gets
+ // clobbered by QuickstepTransitionManager.createWallpaperOpenAnimations
+ // when launcher shows again
+ rv.startHome(false /* animated */);
+ if (rv.mSizeStrategy.getTaskbarController() != null) {
+ // LauncherTaskbarUIController depends on the launcher state when
+ // checking whether to handle resume, but that can come in before
+ // startHome() changes the state, so force-refresh here to ensure the
+ // taskbar is updated
+ rv.mSizeStrategy.getTaskbarController().refreshResumedState();
+ }
}
});
}