Index: media/filters/ffmpeg_video_decoder.cc |
diff --git a/media/filters/ffmpeg_video_decoder.cc b/media/filters/ffmpeg_video_decoder.cc |
index 85014fb85ed7679fe26f0c2e099e5fb0ab38e4b2..853906cff2f8949ccffdbd18d9ff7349319dd21c 100644 |
--- a/media/filters/ffmpeg_video_decoder.cc |
+++ b/media/filters/ffmpeg_video_decoder.cc |
@@ -133,12 +133,7 @@ static void ReleaseVideoBufferImpl(AVCodecContext* s, AVFrame* frame) { |
void FFmpegVideoDecoder::Initialize(const scoped_refptr<DemuxerStream>& stream, |
const PipelineStatusCB& status_cb, |
const StatisticsCB& statistics_cb) { |
- if (!message_loop_->BelongsToCurrentThread()) { |
- message_loop_->PostTask(FROM_HERE, base::Bind( |
- &FFmpegVideoDecoder::Initialize, this, |
- stream, status_cb, statistics_cb)); |
- return; |
- } |
+ DCHECK(message_loop_->BelongsToCurrentThread()); |
FFmpegGlue::InitializeFFmpeg(); |
DCHECK(!demuxer_stream_) << "Already initialized."; |
@@ -162,19 +157,12 @@ void FFmpegVideoDecoder::Initialize(const scoped_refptr<DemuxerStream>& stream, |
} |
void FFmpegVideoDecoder::Read(const ReadCB& read_cb) { |
- // Complete operation asynchronously on different stack of execution as per |
- // the API contract of VideoDecoder::Read() |
- message_loop_->PostTask(FROM_HERE, base::Bind( |
- &FFmpegVideoDecoder::DoRead, this, read_cb)); |
+ DCHECK(message_loop_->BelongsToCurrentThread()); |
+ DoRead(read_cb); |
Ami GONE FROM CHROMIUM
2012/11/29 23:34:23
Either force-post or change the API contract of Vi
scherkus (not reviewing)
2012/11/29 23:45:56
This was lazy prototyping. Inlining the code took
|
} |
void FFmpegVideoDecoder::Reset(const base::Closure& closure) { |
- if (!message_loop_->BelongsToCurrentThread()) { |
- message_loop_->PostTask(FROM_HERE, base::Bind( |
- &FFmpegVideoDecoder::Reset, this, closure)); |
- return; |
- } |
- |
+ DCHECK(message_loop_->BelongsToCurrentThread()); |
DCHECK(reset_cb_.is_null()); |
reset_cb_ = closure; |
@@ -198,11 +186,7 @@ void FFmpegVideoDecoder::DoReset() { |
} |
void FFmpegVideoDecoder::Stop(const base::Closure& closure) { |
- if (!message_loop_->BelongsToCurrentThread()) { |
- message_loop_->PostTask(FROM_HERE, base::Bind( |
- &FFmpegVideoDecoder::Stop, this, closure)); |
- return; |
- } |
+ DCHECK(message_loop_->BelongsToCurrentThread()); |
if (state_ == kUninitialized) { |
closure.Run(); |