Closed
Bug 1136827
Opened 10 years ago
Closed 10 years ago
Run MDSM::DecodeError on the state machine thread
Categories
(Core :: Audio/Video, defect)
Tracking
()
RESOLVED
FIXED
mozilla39
Tracking | Status | |
---|---|---|
firefox39 | --- | fixed |
People
(Reporter: bholley, Assigned: bholley)
References
Details
Attachments
(3 files, 1 obsolete file)
(deleted),
patch
|
mattwoodrow
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
mattwoodrow
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
jwwang
:
review+
|
Details | Diff | Splinter Review |
Followup from bug 1135785 comment 9. I want to do this separately to reduce the risk of weird shutdown failures.
Assignee | ||
Updated•10 years ago
|
Blocks: MediaMonitor
Assignee | ||
Comment 1•10 years ago
|
||
Assignee | ||
Comment 2•10 years ago
|
||
At this point, all the callers actually call it on the state machine thread,
where it belongs.
Attachment #8582569 -
Flags: review?(matt.woodrow)
Assignee | ||
Comment 3•10 years ago
|
||
MediaDecoder::DecodeError invokes MediaDecoder::Shutdown, which shuts down the
state machine. Given the sync dispatch, this means that this is basically already
what's happening.
Attachment #8582570 -
Flags: review?(matt.woodrow)
Updated•10 years ago
|
Attachment #8582569 -
Flags: review?(matt.woodrow) → review+
Updated•10 years ago
|
Attachment #8582570 -
Flags: review?(matt.woodrow) → review+
Assignee | ||
Comment 4•10 years ago
|
||
(In reply to Bobby Holley (:bholley) from comment #1)
> https://treeherder.mozilla.org/#/jobs?repo=try&revision=d80a60c55f9c
I was worried about those ICS emulator reds, but it looks like they happen on a blank try push too:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=c7fc513b2eed
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/3eb419228c1f
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/998f44ed19fb
Backed out in https://hg.mozilla.org/integration/mozilla-inbound/rev/f0a4844f0ccd for crashtest assertions:
https://treeherder.mozilla.org/logviewer.html#?job_id=8011526&repo=mozilla-inbound
Flags: needinfo?(bobbyholley)
Assignee | ||
Comment 6•10 years ago
|
||
I missed this one. I think it also might explain those remaining crashtest
failures on bug 1142336.
Attachment #8582859 -
Flags: review?(matt.woodrow)
Assignee | ||
Comment 7•10 years ago
|
||
Attachment #8582859 -
Attachment is obsolete: true
Attachment #8582859 -
Flags: review?(matt.woodrow)
Attachment #8582887 -
Flags: review?(jwwang)
Updated•10 years ago
|
Attachment #8582887 -
Flags: review?(jwwang) → review+
Comment 8•10 years ago
|
||
Comment on attachment 8582887 [details] [diff] [review]
Part 0 - Call OnAudioSinkError on state machine thread. v2
Review of attachment 8582887 [details] [diff] [review]:
-----------------------------------------------------------------
::: dom/media/MediaDecoderStateMachine.h
@@ +713,5 @@
> // and the sink is shutting down.
> void OnAudioSinkComplete();
>
> // Called by the AudioSink to signal errors.
> void OnAudioSinkError();
Btw, this could be made private, right?
Assignee | ||
Comment 9•10 years ago
|
||
(In reply to Bobby Holley (:bholley) from comment #7)
> Created attachment 8582887 [details] [diff] [review]
> Part 0 - Call OnAudioSinkError on state machine thread. v2
https://treeherder.mozilla.org/#/jobs?repo=try&revision=c2e7a5af2545
Looks fixed.
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/7b0077c342f5
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/69699566f385
remote: https://hg.mozilla.org/integration/mozilla-inbound/rev/7e1f54979300
(In reply to JW Wang [:jwwang] from comment #8)
> > // Called by the AudioSink to signal errors.
> > void OnAudioSinkError();
>
> Btw, this could be made private, right?
It's called synchronously in AudioSink init, when we're on the state machine thread. I figured I might as well leave that alone for now.
Flags: needinfo?(bobbyholley)
Comment 10•10 years ago
|
||
Comment on attachment 8582887 [details] [diff] [review]
Part 0 - Call OnAudioSinkError on state machine thread. v2
Review of attachment 8582887 [details] [diff] [review]:
-----------------------------------------------------------------
::: dom/media/MediaDecoderStateMachine.h
@@ +711,4 @@
>
> // Called by the AudioSink to signal that all outstanding work is complete
> // and the sink is shutting down.
> void OnAudioSinkComplete();
I wonder if we should do the same to OnAudioSinkComplete() which changes |mAudioCompleted|. If we allow state changes only in-between state machine cycles instead of in the middle of them, it would be easier to establish some kind of "stable state" and check more state invariant. Just a thought.
Comment 11•10 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/7b0077c342f5
https://hg.mozilla.org/mozilla-central/rev/69699566f385
https://hg.mozilla.org/mozilla-central/rev/7e1f54979300
Status: NEW → RESOLVED
Closed: 10 years ago
status-firefox39:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla39
You need to log in
before you can comment on or make changes to this bug.
Description
•