| Index: chrome/browser/profiles/profile_impl_io_data.cc
|
| diff --git a/chrome/browser/profiles/profile_impl_io_data.cc b/chrome/browser/profiles/profile_impl_io_data.cc
|
| index a2680af2597f5ad08869f40ecc01320ebabcebf7..89f3832f0de404e27e7aad79a37b9a28e9d4db32 100644
|
| --- a/chrome/browser/profiles/profile_impl_io_data.cc
|
| +++ b/chrome/browser/profiles/profile_impl_io_data.cc
|
| @@ -53,6 +53,7 @@
|
| #include "components/prefs/pref_member.h"
|
| #include "components/prefs/pref_service.h"
|
| #include "components/previews/core/previews_io_data.h"
|
| +#include "components/reporting/content/browser/reporting_network_delegate.h"
|
| #include "content/public/browser/browser_thread.h"
|
| #include "content/public/browser/cookie_store_factory.h"
|
| #include "content/public/browser/notification_service.h"
|
| @@ -155,7 +156,9 @@ void ProfileImplIOData::Handle::Init(
|
| content::CookieStoreConfig::SessionCookieMode session_cookie_mode,
|
| storage::SpecialStoragePolicy* special_storage_policy,
|
| std::unique_ptr<domain_reliability::DomainReliabilityMonitor>
|
| - domain_reliability_monitor) {
|
| + domain_reliability_monitor,
|
| + std::unique_ptr<reporting::ReportingNetworkDelegate::Handle>
|
| + reporting_handle) {
|
| DCHECK_CURRENTLY_ON(BrowserThread::UI);
|
| DCHECK(!io_data_->lazy_params_);
|
| DCHECK(predictor);
|
| @@ -189,6 +192,7 @@ void ProfileImplIOData::Handle::Init(
|
|
|
| io_data_->predictor_.reset(predictor);
|
| io_data_->domain_reliability_monitor_ = std::move(domain_reliability_monitor);
|
| + io_data_->reporting_handle_ = std::move(reporting_handle);
|
|
|
| io_data_->InitializeMetricsEnabledStateOnUIThread();
|
| if (io_data_->domain_reliability_monitor_)
|
| @@ -482,11 +486,22 @@ void ProfileImplIOData::InitializeInternal(
|
|
|
| main_context->set_net_log(io_thread->net_log());
|
|
|
| - main_context_storage->set_network_delegate(
|
| - data_reduction_proxy_io_data()->CreateNetworkDelegate(
|
| - io_thread_globals->data_use_ascriber->CreateNetworkDelegate(
|
| - std::move(chrome_network_delegate)),
|
| - true));
|
| + {
|
| + std::unique_ptr<net::NetworkDelegate> network_delegate =
|
| + std::move(chrome_network_delegate);
|
| +
|
| + network_delegate = data_reduction_proxy_io_data()->CreateNetworkDelegate(
|
| + io_thread_globals->data_use_ascriber->CreateNetworkDelegate(
|
| + std::move(network_delegate)),
|
| + true);
|
| +
|
| + if (reporting_handle_) {
|
| + network_delegate = base::MakeUnique<reporting::ReportingNetworkDelegate>(
|
| + std::move(network_delegate), std::move(reporting_handle_));
|
| + }
|
| +
|
| + main_context->set_network_delegate(network_delegate.release());
|
| + }
|
|
|
| main_context->set_host_resolver(
|
| io_thread_globals->host_resolver.get());
|
|
|