Chromium Code Reviews| Index: media/filters/ffmpeg_video_decoder.cc |
| diff --git a/media/filters/ffmpeg_video_decoder.cc b/media/filters/ffmpeg_video_decoder.cc |
| index b281fb43724df7c039c70787a79374029403ca5b..30b410a7db8454bcfcade4d4af34caaf3f95a2e8 100644 |
| --- a/media/filters/ffmpeg_video_decoder.cc |
| +++ b/media/filters/ffmpeg_video_decoder.cc |
| @@ -183,30 +183,27 @@ void FFmpegVideoDecoder::OnFlushComplete() { |
| state_ = kNormal; |
| } |
| -void FFmpegVideoDecoder::Seek(base::TimeDelta time, |
| - FilterCallback* callback) { |
| +void FFmpegVideoDecoder::Seek(base::TimeDelta time, const FilterStatusCB& cb) { |
| if (MessageLoop::current() != message_loop_) { |
| message_loop_->PostTask(FROM_HERE, |
| - NewRunnableMethod(this, |
| - &FFmpegVideoDecoder::Seek, |
| - time, |
| - callback)); |
| + NewRunnableMethod(this, &FFmpegVideoDecoder::Seek, |
|
Ami GONE FROM CHROMIUM
2011/05/12 20:42:16
indent is off (before your CL).
acolwell GONE FROM CHROMIUM
2011/05/12 22:30:40
Done.
|
| + time, cb)); |
| return; |
| } |
| DCHECK_EQ(MessageLoop::current(), message_loop_); |
| - DCHECK(!seek_callback_.get()); |
| + DCHECK(seek_cb_.is_null()); |
| pts_stream_.Seek(time); |
| - seek_callback_.reset(callback); |
| + seek_cb_ = cb; |
| decode_engine_->Seek(); |
| } |
| void FFmpegVideoDecoder::OnSeekComplete() { |
| DCHECK_EQ(MessageLoop::current(), message_loop_); |
| - DCHECK(seek_callback_.get()); |
| + DCHECK(!seek_cb_.is_null()); |
| - AutoCallbackRunner done_runner(seek_callback_.release()); |
| + CopyAndResetCB(seek_cb_).Run(PIPELINE_OK); |
| } |
| void FFmpegVideoDecoder::OnError() { |