Chromium Code Reviews| Index: webkit/glue/webmediaplayer_impl.cc |
| diff --git a/webkit/glue/webmediaplayer_impl.cc b/webkit/glue/webmediaplayer_impl.cc |
| index 098cd6132406a8be9cb264364fc687b9cf6717bf..61bb454353d0a6cd5e03493b1e6727f4719e5456 100644 |
| --- a/webkit/glue/webmediaplayer_impl.cc |
| +++ b/webkit/glue/webmediaplayer_impl.cc |
| @@ -33,6 +33,7 @@ |
| using WebKit::WebCanvas; |
| using WebKit::WebRect; |
| using WebKit::WebSize; |
| +using media::PipelineStatus; |
| namespace { |
| @@ -171,29 +172,31 @@ void WebMediaPlayerImpl::Proxy::Detach() { |
| } |
| } |
| -void WebMediaPlayerImpl::Proxy::PipelineInitializationCallback() { |
| - render_loop_->PostTask(FROM_HERE, NewRunnableMethod(this, |
| - &WebMediaPlayerImpl::Proxy::PipelineInitializationTask)); |
| +void WebMediaPlayerImpl::Proxy::PipelineInitializationCallback( |
| + PipelineStatus status) { |
| + render_loop_->PostTask(FROM_HERE, NewRunnableMethod( |
| + this, &WebMediaPlayerImpl::Proxy::PipelineInitializationTask, status)); |
| } |
| -void WebMediaPlayerImpl::Proxy::PipelineSeekCallback() { |
| - render_loop_->PostTask(FROM_HERE, NewRunnableMethod(this, |
| - &WebMediaPlayerImpl::Proxy::PipelineSeekTask)); |
| +void WebMediaPlayerImpl::Proxy::PipelineSeekCallback(PipelineStatus status) { |
| + render_loop_->PostTask(FROM_HERE, NewRunnableMethod( |
| + this, &WebMediaPlayerImpl::Proxy::PipelineSeekTask, status)); |
| } |
| -void WebMediaPlayerImpl::Proxy::PipelineEndedCallback() { |
| - render_loop_->PostTask(FROM_HERE, NewRunnableMethod(this, |
| - &WebMediaPlayerImpl::Proxy::PipelineEndedTask)); |
| +void WebMediaPlayerImpl::Proxy::PipelineEndedCallback(PipelineStatus status) { |
| + render_loop_->PostTask(FROM_HERE, NewRunnableMethod( |
| + this, &WebMediaPlayerImpl::Proxy::PipelineEndedTask, status)); |
| } |
| -void WebMediaPlayerImpl::Proxy::PipelineErrorCallback() { |
| - render_loop_->PostTask(FROM_HERE, NewRunnableMethod(this, |
| - &WebMediaPlayerImpl::Proxy::PipelineErrorTask)); |
| +void WebMediaPlayerImpl::Proxy::PipelineErrorCallback(PipelineStatus error) { |
| + DCHECK_NE(error, media::PIPELINE_OK); |
| + render_loop_->PostTask(FROM_HERE, NewRunnableMethod( |
| + this, &WebMediaPlayerImpl::Proxy::PipelineErrorTask, error)); |
| } |
| -void WebMediaPlayerImpl::Proxy::NetworkEventCallback() { |
| - render_loop_->PostTask(FROM_HERE, NewRunnableMethod(this, |
| - &WebMediaPlayerImpl::Proxy::NetworkEventTask)); |
| +void WebMediaPlayerImpl::Proxy::NetworkEventCallback(PipelineStatus status) { |
| + render_loop_->PostTask(FROM_HERE, NewRunnableMethod( |
| + this, &WebMediaPlayerImpl::Proxy::NetworkEventTask, status)); |
| } |
| void WebMediaPlayerImpl::Proxy::AddDataSource(WebDataSource* data_source) { |
| @@ -213,38 +216,39 @@ void WebMediaPlayerImpl::Proxy::RepaintTask() { |
| } |
| } |
| -void WebMediaPlayerImpl::Proxy::PipelineInitializationTask() { |
| +void WebMediaPlayerImpl::Proxy::PipelineInitializationTask( |
| + PipelineStatus status) { |
| DCHECK(MessageLoop::current() == render_loop_); |
| if (webmediaplayer_) { |
| - webmediaplayer_->OnPipelineInitialize(); |
| + webmediaplayer_->OnPipelineInitialize(status); |
| } |
| } |
| -void WebMediaPlayerImpl::Proxy::PipelineSeekTask() { |
| +void WebMediaPlayerImpl::Proxy::PipelineSeekTask(PipelineStatus status) { |
| DCHECK(MessageLoop::current() == render_loop_); |
| if (webmediaplayer_) { |
| - webmediaplayer_->OnPipelineSeek(); |
| + webmediaplayer_->OnPipelineSeek(status); |
| } |
| } |
| -void WebMediaPlayerImpl::Proxy::PipelineEndedTask() { |
| +void WebMediaPlayerImpl::Proxy::PipelineEndedTask(PipelineStatus status) { |
| DCHECK(MessageLoop::current() == render_loop_); |
| if (webmediaplayer_) { |
| - webmediaplayer_->OnPipelineEnded(); |
| + webmediaplayer_->OnPipelineEnded(status); |
| } |
| } |
| -void WebMediaPlayerImpl::Proxy::PipelineErrorTask() { |
| +void WebMediaPlayerImpl::Proxy::PipelineErrorTask(PipelineStatus error) { |
| DCHECK(MessageLoop::current() == render_loop_); |
| if (webmediaplayer_) { |
| - webmediaplayer_->OnPipelineError(); |
| + webmediaplayer_->OnPipelineError(error); |
| } |
| } |
| -void WebMediaPlayerImpl::Proxy::NetworkEventTask() { |
| +void WebMediaPlayerImpl::Proxy::NetworkEventTask(PipelineStatus status) { |
| DCHECK(MessageLoop::current() == render_loop_); |
| if (webmediaplayer_) { |
| - webmediaplayer_->OnNetworkEvent(); |
| + webmediaplayer_->OnNetworkEvent(status); |
| } |
| } |
| @@ -744,9 +748,9 @@ void WebMediaPlayerImpl::Repaint() { |
| GetClient()->repaint(); |
| } |
| -void WebMediaPlayerImpl::OnPipelineInitialize() { |
| +void WebMediaPlayerImpl::OnPipelineInitialize(PipelineStatus status) { |
| DCHECK(MessageLoop::current() == main_loop_); |
| - if (pipeline_->GetError() == media::PIPELINE_OK) { |
| + if (status == media::PIPELINE_OK) { |
| // Only keep one time range starting from 0. |
| WebKit::WebTimeRanges new_buffered(static_cast<size_t>(1)); |
| new_buffered[0].start = 0.0f; |
| @@ -763,7 +767,7 @@ void WebMediaPlayerImpl::OnPipelineInitialize() { |
| SetNetworkState(WebKit::WebMediaPlayer::Loaded); |
| } |
| } else { |
| - // TODO(hclam): should use pipeline_->GetError() to determine the state |
| + // TODO(hclam): should use |status| to determine the state |
| // properly and reports error using MediaError. |
| // WebKit uses FormatError to indicate an error for bogus URL or bad file. |
| // Since we are at the initialization stage we can safely treat every error |
| @@ -775,9 +779,9 @@ void WebMediaPlayerImpl::OnPipelineInitialize() { |
| Repaint(); |
| } |
| -void WebMediaPlayerImpl::OnPipelineSeek() { |
| +void WebMediaPlayerImpl::OnPipelineSeek(PipelineStatus status) { |
| DCHECK(MessageLoop::current() == main_loop_); |
| - if (pipeline_->GetError() == media::PIPELINE_OK) { |
| + if (status == media::PIPELINE_OK) { |
| // Update our paused time. |
| if (paused_) { |
| paused_time_ = pipeline_->GetCurrentTime(); |
| @@ -789,17 +793,20 @@ void WebMediaPlayerImpl::OnPipelineSeek() { |
| } |
| } |
| -void WebMediaPlayerImpl::OnPipelineEnded() { |
| +void WebMediaPlayerImpl::OnPipelineEnded(PipelineStatus status) { |
| DCHECK(MessageLoop::current() == main_loop_); |
| - if (pipeline_->GetError() == media::PIPELINE_OK) { |
| + if (status == media::PIPELINE_OK) { |
| GetClient()->timeChanged(); |
| } |
| } |
| -void WebMediaPlayerImpl::OnPipelineError() { |
| +void WebMediaPlayerImpl::OnPipelineError(PipelineStatus error) { |
| DCHECK(MessageLoop::current() == main_loop_); |
| - switch (pipeline_->GetError()) { |
| + switch (error) { |
| case media::PIPELINE_OK: |
| + LOG(DFATAL) << "PIPELINE_OK isn't an error!"; |
| + break; |
| + |
| case media::PIPELINE_ERROR_INITIALIZATION_FAILED: |
| case media::PIPELINE_ERROR_REQUIRED_FILTER_MISSING: |
| case media::PIPELINE_ERROR_COULD_NOT_RENDER: |
| @@ -830,9 +837,9 @@ void WebMediaPlayerImpl::OnPipelineError() { |
| Repaint(); |
| } |
| -void WebMediaPlayerImpl::OnNetworkEvent() { |
| +void WebMediaPlayerImpl::OnNetworkEvent(PipelineStatus status) { |
| DCHECK(MessageLoop::current() == main_loop_); |
| - if (pipeline_->GetError() == media::PIPELINE_OK) { |
| + if (status == media::PIPELINE_OK) { |
| if (pipeline_->IsNetworkActive()) { |
| SetNetworkState(WebKit::WebMediaPlayer::Loading); |
| } else { |
| @@ -892,7 +899,7 @@ void WebMediaPlayerImpl::Destroy() { |
| } |
| } |
| -void WebMediaPlayerImpl::PipelineStoppedCallback() { |
| +void WebMediaPlayerImpl::PipelineStoppedCallback(PipelineStatus status) { |
|
acolwell GONE FROM CHROMIUM
2011/03/15 23:43:55
Could we replace the code that uses this with your
Ami GONE FROM CHROMIUM
2011/03/16 00:01:02
Next CL.
|
| pipeline_stopped_.Signal(); |
| } |