Chromium Code Reviews
DescriptionDon't fallback if we've successfully opened a stream previously.
Fixes an issue where we've opened streams through the AudioOutputDispatcher
successfully, but eventually fail to open a stream. At this point the old
code would try to fallback to the high latency audio path and in the process
destroy the old AudioOutputDispatcher during Initialize()... leaving a bunch
of physical audio streams in the ether calling OnMoreDataResampler callbacks
which no longer have a way to stop the associated stream before being deleted.
This also explains the "double-Stop()" errors from issue 149815, since they
were not double-Stop() but rather Stop() on an AudioOutputProxy that the new
dispatcher didn't know about.
Rolls in the following fixes as well:
- Replaces lock with message_loop_ check.
- Fixes an issue where physical streams were incorrectly closed on Open failure.
- Rollback of previous double-Stop() and CHECK() changes.
BUG=150619
TEST=new media unittest.
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=157940
Patch Set 1 #Patch Set 2 : Revert double-stop() change. #
Total comments: 10
Patch Set 3 : Comments w/o state machine. #
Total comments: 5
Messages
Total messages: 11 (0 generated)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||