Index: content/child/webthread_impl.cc |
diff --git a/content/child/webthread_impl.cc b/content/child/webthread_impl.cc |
index 9b697def31ab4d1f84e3002bc3a5e36bb8244722..2e30a648b80f8a4e5ea38aad65c61c36ea026500 100644 |
--- a/content/child/webthread_impl.cc |
+++ b/content/child/webthread_impl.cc |
@@ -43,7 +43,7 @@ void WebThreadBase::addTaskObserver(TaskObserver* observer) { |
std::make_pair(observer, static_cast<TaskObserverAdapter*>(NULL))); |
if (result.second) |
result.first->second = new TaskObserverAdapter(observer); |
- base::MessageLoop::current()->AddTaskObserver(result.first->second); |
+ AddTaskObserverInternal(result.first->second); |
} |
void WebThreadBase::removeTaskObserver(TaskObserver* observer) { |
@@ -51,11 +51,21 @@ void WebThreadBase::removeTaskObserver(TaskObserver* observer) { |
TaskObserverMap::iterator iter = task_observer_map_.find(observer); |
if (iter == task_observer_map_.end()) |
return; |
- base::MessageLoop::current()->RemoveTaskObserver(iter->second); |
+ RemoveTaskObserverInternal(iter->second); |
delete iter->second; |
task_observer_map_.erase(iter); |
} |
+void WebThreadBase::AddTaskObserverInternal( |
+ base::MessageLoop::TaskObserver* observer) { |
+ base::MessageLoop::current()->AddTaskObserver(observer); |
alex clarke (OOO till 29th)
2015/02/13 11:02:07
Do we need DCHECK(main_thread_checker_.CalledOnVal
|
+} |
+ |
+void WebThreadBase::RemoveTaskObserverInternal( |
+ base::MessageLoop::TaskObserver* observer) { |
+ base::MessageLoop::current()->RemoveTaskObserver(observer); |
+} |
+ |
WebThreadImpl::WebThreadImpl(const char* name) |
: thread_(new base::Thread(name)) { |
thread_->Start(); |
@@ -84,7 +94,9 @@ WebThreadImpl::WebThreadImpl(const char* name) |
// are no reference counter modification like [A] (because task->run() is not |
// executed), so there are no race conditions. |
// See https://crbug.com/390851 for more details. |
-static void RunWebThreadTask(scoped_ptr<blink::WebThread::Task> task) { |
+// |
+// static |
+void WebThreadBase::RunWebThreadTask(scoped_ptr<blink::WebThread::Task> task) { |
task->run(); |
} |