Index: webkit/media/webmediaplayer_impl.cc |
diff --git a/webkit/media/webmediaplayer_impl.cc b/webkit/media/webmediaplayer_impl.cc |
index 88ba77bfc02e312a44e8182f0ca3d681d75cdc3a..e3b762471910bbe3f0399fb99fed630f9027dd49 100644 |
--- a/webkit/media/webmediaplayer_impl.cc |
+++ b/webkit/media/webmediaplayer_impl.cc |
@@ -1117,12 +1117,21 @@ void WebMediaPlayerImpl::NotifyDownloading(bool is_downloading) { |
void WebMediaPlayerImpl::StartPipeline() { |
starting_ = true; |
+ |
+ media::RequestDecryptorNotificationCB request_decryptor_notification_cb; |
+ if (decryptor_) { |
+ request_decryptor_notification_cb = |
+ base::Bind(&ProxyDecryptor::RequestDecryptorNotification, |
+ base::Unretained(decryptor_.get())); |
+ } |
+ |
pipeline_->Start( |
filter_collection_.Pass(), |
BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::OnPipelineEnded), |
BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::OnPipelineError), |
BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::OnPipelineSeek), |
- BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::OnPipelineBufferingState)); |
+ BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::OnPipelineBufferingState), |
+ request_decryptor_notification_cb); |
} |
void WebMediaPlayerImpl::SetNetworkState(WebMediaPlayer::NetworkState state) { |