Index: content/browser/loader/url_loader_factory_impl.cc |
diff --git a/content/browser/loader/url_loader_factory_impl.cc b/content/browser/loader/url_loader_factory_impl.cc |
index b9095b3a3aa2f845e3eb91db5717ff9351f0b5d5..b2eedd717f62b06ebe48bcce70249d49509f46d1 100644 |
--- a/content/browser/loader/url_loader_factory_impl.cc |
+++ b/content/browser/loader/url_loader_factory_impl.cc |
@@ -9,7 +9,6 @@ |
#include "content/browser/loader/resource_requester_info.h" |
#include "content/common/resource_request.h" |
#include "content/common/url_loader.mojom.h" |
-#include "content/public/browser/browser_thread.h" |
#include "mojo/public/cpp/bindings/strong_binding.h" |
namespace content { |
@@ -35,15 +34,17 @@ void DispatchSyncLoadResult( |
} // namespace |
URLLoaderFactoryImpl::URLLoaderFactoryImpl( |
- scoped_refptr<ResourceRequesterInfo> requester_info) |
- : requester_info_(std::move(requester_info)) { |
+ scoped_refptr<ResourceRequesterInfo> requester_info, |
+ const scoped_refptr<base::SingleThreadTaskRunner>& io_thread_runner) |
+ : requester_info_(std::move(requester_info)), |
+ io_thread_task_runner_(io_thread_runner) { |
DCHECK((requester_info_->IsRenderer() && requester_info_->filter()) || |
requester_info_->IsNavigationPreload()); |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
+ DCHECK(io_thread_task_runner_->BelongsToCurrentThread()); |
} |
URLLoaderFactoryImpl::~URLLoaderFactoryImpl() { |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
+ DCHECK(io_thread_task_runner_->BelongsToCurrentThread()); |
} |
void URLLoaderFactoryImpl::CreateLoaderAndStart( |
@@ -72,7 +73,9 @@ void URLLoaderFactoryImpl::CreateLoaderAndStart( |
int32_t request_id, |
const ResourceRequest& url_request, |
mojom::URLLoaderClientPtr client) { |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
+ DCHECK(ResourceDispatcherHostImpl::Get() |
+ ->io_thread_task_runner() |
+ ->BelongsToCurrentThread()); |
ResourceDispatcherHostImpl* rdh = ResourceDispatcherHostImpl::Get(); |
rdh->OnRequestResourceWithMojo(requester_info, routing_id, request_id, |
@@ -86,7 +89,9 @@ void URLLoaderFactoryImpl::SyncLoad(ResourceRequesterInfo* requester_info, |
int32_t request_id, |
const ResourceRequest& url_request, |
const SyncLoadCallback& callback) { |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
+ DCHECK(ResourceDispatcherHostImpl::Get() |
+ ->io_thread_task_runner() |
+ ->BelongsToCurrentThread()); |
ResourceDispatcherHostImpl* rdh = ResourceDispatcherHostImpl::Get(); |
rdh->OnSyncLoadWithMojo(requester_info, routing_id, request_id, url_request, |
@@ -95,10 +100,11 @@ void URLLoaderFactoryImpl::SyncLoad(ResourceRequesterInfo* requester_info, |
void URLLoaderFactoryImpl::Create( |
scoped_refptr<ResourceRequesterInfo> requester_info, |
- mojo::InterfaceRequest<mojom::URLLoaderFactory> request) { |
- mojo::MakeStrongBinding( |
- base::WrapUnique(new URLLoaderFactoryImpl(std::move(requester_info))), |
- std::move(request)); |
+ mojo::InterfaceRequest<mojom::URLLoaderFactory> request, |
+ const scoped_refptr<base::SingleThreadTaskRunner>& io_thread_runner) { |
+ mojo::MakeStrongBinding(base::WrapUnique(new URLLoaderFactoryImpl( |
+ std::move(requester_info), io_thread_runner)), |
+ std::move(request)); |
} |
} // namespace content |