Skip starting no-longer-collecting transition

This CL prevents WindowOrganizerController from starting a transition
which is no longer collecting.

Bug: 266152068
Test: Open heavy app, and switch back and forth between tablet and clamshell
Change-Id: Ia3937aa886809ac71f6afbc8c413455dd0e5e76f
(cherry picked from commit 17754df7b7cacc56b6b684cd237cb108d20176cf)
This commit is contained in:
Toshiki Kikuchi
2023-02-06 20:17:15 +09:00
parent b54f75590c
commit 8d0910c591

View File

@@ -315,6 +315,13 @@ class WindowOrganizerController extends IWindowOrganizerController.Stub
}
transition = mTransitionController.createTransition(type);
}
if (!transition.isCollecting()) {
Slog.e(TAG, "Trying to start a transition that isn't collecting. This probably"
+ " means Shell took too long to respond to a request. WM State may be"
+ " incorrect now, please file a bug");
applyTransaction(wct, -1 /*syncId*/, null /*transition*/, caller);
return transition.getToken();
}
transition.start();
transition.mLogger.mStartWCT = wct;
applyTransaction(wct, -1 /*syncId*/, transition, caller);