Queue startTransition calls made while already collecting
Shell Transitions only supports 1 transition collecting at a time. This limitation comes from BLASTSyncEngine. However, because Shell can call startTransition at any time (and doesn't have a way to know if WM is already "collecting" for a transition), we can't just crash in this case. We also can't just use the existing transition because it has a different "client" expecting results. So, the best we can do is queue them up. Fortunately, the startTransition API Shell uses is designed such that all the relevant operations are in one WCT, so we can maintain server-side correctness. This CL adds a queueing mechanism for these situations. In practice, this should actually never be needed; however, it is *technically* possible and automated tests are more likely to hit it. Bug: 183993924 Test: pass existing Change-Id: I255fb336cb30c7d1e1b82188a31f9c693b9e138c
Loading
Please register or sign in to comment