| Index: base/observer_list_threadsafe.h
|
| diff --git a/base/observer_list_threadsafe.h b/base/observer_list_threadsafe.h
|
| index e0ce0daa90f74e5db7ddef6bb250f70f35989c61..5205a5a9d1f47f4f696592195269c290cf874e1f 100644
|
| --- a/base/observer_list_threadsafe.h
|
| +++ b/base/observer_list_threadsafe.h
|
| @@ -14,10 +14,9 @@
|
| #include "base/logging.h"
|
| #include "base/memory/ref_counted.h"
|
| #include "base/message_loop/message_loop.h"
|
| +#include "base/message_loop/message_loop_proxy.h"
|
| #include "base/observer_list.h"
|
| -#include "base/single_thread_task_runner.h"
|
| #include "base/stl_util.h"
|
| -#include "base/thread_task_runner_handle.h"
|
| #include "base/threading/platform_thread.h"
|
|
|
| ///////////////////////////////////////////////////////////////////////////////
|
| @@ -178,7 +177,7 @@
|
| base::AutoLock lock(list_lock_);
|
| for (const auto& entry : observer_lists_) {
|
| ObserverListContext* context = entry.second;
|
| - context->task_runner->PostTask(
|
| + context->loop->PostTask(
|
| from_here,
|
| base::Bind(
|
| &ObserverListThreadSafe<ObserverType>::template NotifyWrapper<
|
| @@ -193,9 +192,11 @@
|
|
|
| struct ObserverListContext {
|
| explicit ObserverListContext(NotificationType type)
|
| - : task_runner(base::ThreadTaskRunnerHandle::Get()), list(type) {}
|
| -
|
| - scoped_refptr<base::SingleThreadTaskRunner> task_runner;
|
| + : loop(base::MessageLoopProxy::current()),
|
| + list(type) {
|
| + }
|
| +
|
| + scoped_refptr<base::MessageLoopProxy> loop;
|
| ObserverList<ObserverType> list;
|
|
|
| private:
|
|
|