diff options
-rw-r--r-- | chrome/renderer/webmediaplayer_delegate_impl.cc | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/chrome/renderer/webmediaplayer_delegate_impl.cc b/chrome/renderer/webmediaplayer_delegate_impl.cc index 78dcd4c..e860a0d 100644 --- a/chrome/renderer/webmediaplayer_delegate_impl.cc +++ b/chrome/renderer/webmediaplayer_delegate_impl.cc @@ -14,23 +14,24 @@ class NotifyWebMediaPlayerTask : public CancelableTask { public: - NotifyWebMediaPlayerTask(webkit_glue::WebMediaPlayer* web_media_player, + NotifyWebMediaPlayerTask(WebMediaPlayerDelegateImpl* delegate, WebMediaPlayerMethod method) - : web_media_player_(web_media_player), + : delegate_(delegate), method_(method) {} virtual void Run() { - if (web_media_player_) { - (web_media_player_->*(method_))(); + if (delegate_) { + (delegate_->web_media_player()->*(method_))(); + delegate_->DidTask(this); } } virtual void Cancel() { - web_media_player_ = NULL; + delegate_ = NULL; } private: - webkit_glue::WebMediaPlayer* web_media_player_; + WebMediaPlayerDelegateImpl* delegate_; WebMediaPlayerMethod method_; DISALLOW_COPY_AND_ASSIGN(NotifyWebMediaPlayerTask); @@ -356,8 +357,7 @@ void WebMediaPlayerDelegateImpl::PostTask(int index, AutoLock auto_lock(task_lock_); if(!tasks_[index]) { - CancelableTask* task = new NotifyWebMediaPlayerTask(web_media_player_, - method); + CancelableTask* task = new NotifyWebMediaPlayerTask(this, method); tasks_[index] = task; main_loop_->PostTask(FROM_HERE, task); } |