Chromium Code Reviews| Index: content/child/resource_scheduling_filter.cc |
| diff --git a/content/child/resource_scheduling_filter.cc b/content/child/resource_scheduling_filter.cc |
| index 2d53cd0b5c5a49855d8bca4d4dcfa79c3dbdf90c..ebbddbdcebe16a22618a020901bd1bc2125cba39 100644 |
| --- a/content/child/resource_scheduling_filter.cc |
| +++ b/content/child/resource_scheduling_filter.cc |
| @@ -11,32 +11,9 @@ |
| #include "content/child/resource_dispatcher.h" |
| #include "ipc/ipc_message.h" |
| #include "ipc/ipc_message_start.h" |
| -#include "third_party/WebKit/public/platform/WebTaskRunner.h" |
| -#include "third_party/WebKit/public/platform/WebTraceLocation.h" |
| namespace content { |
| -namespace { |
| -class DispatchMessageTask : public blink::WebTaskRunner::Task { |
| - public: |
| - DispatchMessageTask( |
| - base::WeakPtr<ResourceSchedulingFilter> resource_scheduling_filter, |
| - const IPC::Message& message) |
| - : resource_scheduling_filter_(resource_scheduling_filter), |
| - message_(message) {} |
| - |
| - void run() override { |
| - if (!resource_scheduling_filter_.get()) |
| - return; |
| - resource_scheduling_filter_->DispatchMessage(message_); |
| - } |
| - |
| - private: |
| - base::WeakPtr<ResourceSchedulingFilter> resource_scheduling_filter_; |
| - const IPC::Message message_; |
| -}; |
| -} // namespace |
| - |
| ResourceSchedulingFilter::ResourceSchedulingFilter( |
| const scoped_refptr<base::SingleThreadTaskRunner>& main_thread_task_runner, |
| ResourceDispatcher* resource_dispatcher) |
| @@ -63,25 +40,24 @@ bool ResourceSchedulingFilter::OnMessageReceived(const IPC::Message& message) { |
| // one, or on the general main_thread_task_runner if there isn't. |
| RequestIdToTaskRunnerMap::const_iterator iter = |
| request_id_to_task_runner_map_.find(request_id); |
| + scoped_refptr<base::SingleThreadTaskRunner> task_runner; |
| if (iter != request_id_to_task_runner_map_.end()) { |
| - // TODO(alexclarke): Find a way to let blink and chromium FROM_HERE coexist. |
| - iter->second->postTask( |
| - BLINK_FROM_HERE, |
| - new DispatchMessageTask(weak_ptr_factory_.GetWeakPtr(), message)); |
| + task_runner = iter->second; |
| } else { |
| - main_thread_task_runner_->PostTask( |
| - FROM_HERE, base::Bind(&ResourceSchedulingFilter::DispatchMessage, |
| - weak_ptr_factory_.GetWeakPtr(), message)); |
| + task_runner = main_thread_task_runner_; |
| } |
| + task_runner->PostTask(FROM_HERE, |
| + base::Bind(&ResourceSchedulingFilter::DispatchMessage, |
| + weak_ptr_factory_.GetWeakPtr(), message)); |
| return true; |
| } |
| void ResourceSchedulingFilter::SetRequestIdTaskRunner( |
| int id, |
| - std::unique_ptr<blink::WebTaskRunner> web_task_runner) { |
| + scoped_refptr<base::SingleThreadTaskRunner> task_runner) { |
|
no sievers
2016/08/08 18:45:54
nit: 'const scoped_refptr<>&'
Sami
2016/08/09 10:09:42
Done.
|
| base::AutoLock lock(request_id_to_task_runner_map_lock_); |
| request_id_to_task_runner_map_.insert( |
| - std::make_pair(id, std::move(web_task_runner))); |
| + std::make_pair(id, std::move(task_runner))); |
|
no sievers
2016/08/08 18:45:54
and probably didn't intend to move the refptr here
Sami
2016/08/09 10:09:42
Done.
|
| } |
| void ResourceSchedulingFilter::ClearRequestIdTaskRunner(int id) { |