Prevent stopping dream immediately.
There are two places where we are currently stopping the dream process immediately instead of waiting for the dream to complete: 1) DreamManagerService#requestStopDreamFromShell. In this use case, we're simulating normal interaction and shouldn't be stopping immediately. 2) DreamActivity#onDestroy. This stops the dream immediately by indirectly calling DreamService#onDestroy. This fix was meant to ensure that the DreamService destroy sequence always executed. However, always calling this on Activity#onDestroy leads to a race condition with the normal Activity teardown logic. This should exclude cases where DreamService#onDestroy wouldn't be called, such as when the Activity is finishing. This changelist addresses these paths to ensure normal usage doesn't result in immediately stopping the DreamService. Bug: 242368903 Bug: 241569844 Bug: 243385408 Test: atest DreamServiceTest Change-Id: Iba346f325383cbf949c65f896237e3d997efcab0
Loading
Please register or sign in to comment