OnPipelineResumed() should be reentrancy-safe. |
|||||||
Issue descriptionOnPipelineSuspended() and OnPipelineResumed() are special-purpose callbacks with lifecycle guarantees that are rather different from other PipelineController methods. WMPI should not rely on them except for their intended purpose (which is for displaying the 'now casting' frame, and implementing restart-for-fullscreen). Instead, NotifyPlaybackStarted() and NotifyPlaybackPaused() should be modified to always be safe to call (including repeatedly), and they should be called at the same time as Suspend()/Resume().
,
Apr 15 2016
,
Apr 17 2017
This issue has been available for more than 365 days, and should be re-evaluated. Please re-triage this issue. The Hotlist-Recharge-Cold label is applied for tracking purposes, and should not be removed after re-triaging the issue. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Apr 19 2017
,
Apr 20 2018
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Apr 20 2018
I disagree and think we'll always need these on suspend / on resume method.
,
Apr 20 2018
If that's true, then we should design a better mechanism. The suspended/resumed callbacks are vulnerable to re-entrancy bugs in a way that the other callbacks are not.
,
Apr 20 2018
Re-opening with new description. It is not safe to call PipelineController methods from OnPipelineSuspended, OnBeforePipelineResumed, or OnPipelineResumed. Since it's easy for reviewers to miss changes that violate this rule, a safer mechanism should be designed. |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by bugdroid1@chromium.org
, Apr 4 2016