Merge "Return non-null empty list if the controller is already invalidated" into sc-v2-dev
This commit is contained in:
@@ -292,7 +292,6 @@ public class RecentTasksController implements TaskStackListenerCallback,
|
|||||||
* Invalidates this instance, preventing future calls from updating the controller.
|
* Invalidates this instance, preventing future calls from updating the controller.
|
||||||
*/
|
*/
|
||||||
void invalidate() {
|
void invalidate() {
|
||||||
Slog.d("b/206648922", "invalidating controller: " + mController);
|
|
||||||
mController = null;
|
mController = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -313,13 +312,16 @@ public class RecentTasksController implements TaskStackListenerCallback,
|
|||||||
@Override
|
@Override
|
||||||
public GroupedRecentTaskInfo[] getRecentTasks(int maxNum, int flags, int userId)
|
public GroupedRecentTaskInfo[] getRecentTasks(int maxNum, int flags, int userId)
|
||||||
throws RemoteException {
|
throws RemoteException {
|
||||||
|
if (mController == null) {
|
||||||
|
// The controller is already invalidated -- just return an empty task list for now
|
||||||
|
return new GroupedRecentTaskInfo[0];
|
||||||
|
}
|
||||||
|
|
||||||
final GroupedRecentTaskInfo[][] out = new GroupedRecentTaskInfo[][]{null};
|
final GroupedRecentTaskInfo[][] out = new GroupedRecentTaskInfo[][]{null};
|
||||||
executeRemoteCallWithTaskPermission(mController, "getRecentTasks",
|
executeRemoteCallWithTaskPermission(mController, "getRecentTasks",
|
||||||
(controller) -> out[0] = controller.getRecentTasks(maxNum, flags, userId)
|
(controller) -> out[0] = controller.getRecentTasks(maxNum, flags, userId)
|
||||||
.toArray(new GroupedRecentTaskInfo[0]),
|
.toArray(new GroupedRecentTaskInfo[0]),
|
||||||
true /* blocking */);
|
true /* blocking */);
|
||||||
Slog.d("b/206648922", "getRecentTasks(" + maxNum + "): " + out[0]
|
|
||||||
+ " mController=" + mController);
|
|
||||||
return out[0];
|
return out[0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user