Fix hangs & crashes in teardown-during-Seek.
Hangs:
- AudioRendererImpl: Don't hold lock_ in the call to Join() b/c OnStop wants to
acquire the lock before exiting.
- FFmpegDemuxerStream::Stop: signal EOS to waiting read callbacks (instead of
silently dropping them on the floor) so decoders can exit instead of stalling
(and causing renderers to stall).
Crashes:
- CompositeFilter::Stop: clear out the Seek callback when Stopping.
- FFmpegVideoDecoder::ProduceVideoFrame: early-return if already stopped (racing
with webkit repaints makes this necessary).
Also fixed a bunch of mis-indentation where I saw it.
BUG=98975,98948,98955,96861
TEST=trybots, manual
Review URL: http://codereview.chromium.org/8184003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104540 0039d316-1c4b-4281-b951-d872f2087c98
5 files changed