Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(35)

Issue 2570773002: Fix crash when pipeline is stopped while video restart is pending (Closed)

Created:
4 years ago by servolk
Modified:
3 years, 11 months ago
Reviewers:
whywhat, *xhwang
CC:
chromium-reviews, feature-media-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix crash when pipeline is stopped while video restart is pending Media renderer might get destroyed (due to pipeline being stopped or suspended) while a video track restart is pending. When that happens the VideoRendererImpl has a pending flush_cb_ that will get called from video renderer destructor invoking RendererImpl::RestartVideoRenderer, so RestartVideoRenderer needs to actually try restarting the video renderer only if we are still in the playing state. BUG=668963 Committed: https://crrev.com/a5c72b04df68fd0721447e9de3867bb7ccaa743d Cr-Commit-Position: refs/heads/master@{#441457}

Patch Set 1 #

Total comments: 14

Patch Set 2 : Added comments + addressed CR feedback #

Total comments: 2

Patch Set 3 : Invalidate weak RendererImpl pointers, instead of introducing a new renderer state #

Unified diffs Side-by-side diffs Delta from patch set Stats (+37 lines, -2 lines) Patch
M media/renderers/renderer_impl.cc View 1 2 2 chunks +7 lines, -2 lines 0 comments Download
M media/test/pipeline_integration_test.cc View 1 2 1 chunk +30 lines, -0 lines 0 comments Download

Messages

Total messages: 45 (24 generated)
servolk
4 years ago (2016-12-13 03:19:18 UTC) #5
whywhat
non-OWNER review with a kind of architectural question https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc File media/renderers/renderer_impl.cc (right): https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc#newcode124 media/renderers/renderer_impl.cc:124: base::ResetAndReturn(&flush_cb_).Run(); ...
4 years ago (2016-12-13 05:08:41 UTC) #6
servolk
https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc File media/renderers/renderer_impl.cc (right): https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc#newcode124 media/renderers/renderer_impl.cc:124: base::ResetAndReturn(&flush_cb_).Run(); On 2016/12/13 05:08:41, whywhat wrote: > Hm, I'd ...
4 years ago (2016-12-13 19:39:47 UTC) #9
whywhat
https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc File media/renderers/renderer_impl.cc (right): https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc#newcode124 media/renderers/renderer_impl.cc:124: base::ResetAndReturn(&flush_cb_).Run(); On 2016/12/13 at 19:39:47, servolk wrote: > On ...
4 years ago (2016-12-13 20:10:54 UTC) #10
servolk
https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc File media/renderers/renderer_impl.cc (right): https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc#newcode124 media/renderers/renderer_impl.cc:124: base::ResetAndReturn(&flush_cb_).Run(); On 2016/12/13 20:10:54, whywhat wrote: > On 2016/12/13 ...
4 years ago (2016-12-13 20:57:10 UTC) #11
whywhat
https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc File media/renderers/renderer_impl.cc (right): https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc#newcode124 media/renderers/renderer_impl.cc:124: base::ResetAndReturn(&flush_cb_).Run(); On 2016/12/13 at 20:57:10, servolk wrote: > On ...
4 years ago (2016-12-13 21:43:07 UTC) #12
servolk
https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc File media/renderers/renderer_impl.cc (right): https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc#newcode124 media/renderers/renderer_impl.cc:124: base::ResetAndReturn(&flush_cb_).Run(); On 2016/12/13 21:43:07, whywhat wrote: > On 2016/12/13 ...
4 years ago (2016-12-13 22:18:33 UTC) #13
whywhat
On 2016/12/13 at 22:18:33, servolk wrote: > https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc > File media/renderers/renderer_impl.cc (right): > > https://codereview.chromium.org/2570773002/diff/1/media/renderers/renderer_impl.cc#newcode124 ...
4 years ago (2016-12-13 23:22:47 UTC) #16
DaleCurtis
defer to xhwang@ since he's our rendererimpl expert.
4 years ago (2016-12-14 00:45:08 UTC) #21
servolk
On 2016/12/14 00:45:08, DaleCurtis_OOO_Dec14_Jan6 wrote: > defer to xhwang@ since he's our rendererimpl expert. Post-holiday ...
3 years, 11 months ago (2017-01-03 18:55:04 UTC) #22
whywhat
lgtm
3 years, 11 months ago (2017-01-03 22:55:33 UTC) #25
xhwang
sorry for the delay, looking
3 years, 11 months ago (2017-01-04 17:42:55 UTC) #28
xhwang
https://codereview.chromium.org/2570773002/diff/20001/media/renderers/renderer_impl.cc File media/renderers/renderer_impl.cc (right): https://codereview.chromium.org/2570773002/diff/20001/media/renderers/renderer_impl.cc#newcode114 media/renderers/renderer_impl.cc:114: state_ = STATE_SHUTDOWN; Instead of adding a new state, ...
3 years, 11 months ago (2017-01-04 18:29:10 UTC) #29
servolk
https://codereview.chromium.org/2570773002/diff/20001/media/renderers/renderer_impl.cc File media/renderers/renderer_impl.cc (right): https://codereview.chromium.org/2570773002/diff/20001/media/renderers/renderer_impl.cc#newcode114 media/renderers/renderer_impl.cc:114: state_ = STATE_SHUTDOWN; On 2017/01/04 18:29:09, xhwang wrote: > ...
3 years, 11 months ago (2017-01-04 19:00:52 UTC) #30
xhwang
On 2017/01/04 19:00:52, servolk wrote: > https://codereview.chromium.org/2570773002/diff/20001/media/renderers/renderer_impl.cc > File media/renderers/renderer_impl.cc (right): > > https://codereview.chromium.org/2570773002/diff/20001/media/renderers/renderer_impl.cc#newcode114 > ...
3 years, 11 months ago (2017-01-04 19:02:57 UTC) #31
servolk
On 2017/01/04 19:02:57, xhwang wrote: > On 2017/01/04 19:00:52, servolk wrote: > > > https://codereview.chromium.org/2570773002/diff/20001/media/renderers/renderer_impl.cc ...
3 years, 11 months ago (2017-01-04 19:30:09 UTC) #34
xhwang
Just double check, did you check that the test fails without the fix? Otherwise, LGTM! ...
3 years, 11 months ago (2017-01-04 19:37:52 UTC) #35
servolk
On 2017/01/04 19:37:52, xhwang wrote: > Just double check, did you check that the test ...
3 years, 11 months ago (2017-01-04 19:45:50 UTC) #36
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2570773002/40001
3 years, 11 months ago (2017-01-04 19:46:36 UTC) #40
commit-bot: I haz the power
Committed patchset #3 (id:40001)
3 years, 11 months ago (2017-01-04 20:52:44 UTC) #43
commit-bot: I haz the power
3 years, 11 months ago (2017-01-04 20:54:49 UTC) #45
Message was sent while issue was closed.
Patchset 3 (id:??) landed as
https://crrev.com/a5c72b04df68fd0721447e9de3867bb7ccaa743d
Cr-Commit-Position: refs/heads/master@{#441457}

Powered by Google App Engine
This is Rietveld 408576698