diff options
Diffstat (limited to 'src/core/profile_io_data_qt.cpp')
-rw-r--r-- | src/core/profile_io_data_qt.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/core/profile_io_data_qt.cpp b/src/core/profile_io_data_qt.cpp index ee59f3d96..4519bd8fb 100644 --- a/src/core/profile_io_data_qt.cpp +++ b/src/core/profile_io_data_qt.cpp @@ -327,10 +327,11 @@ void ProfileIODataQt::generateStorage() if (!m_dhcpPacFileFetcherFactory) m_dhcpPacFileFetcherFactory.reset(new net::DhcpPacFileFetcherFactory); + proxy_resolver::mojom::ProxyResolverFactoryPtr proxyResolver(std::move(m_proxyResolverFactoryInterface)); m_storage->set_proxy_resolution_service(network::CreateProxyResolutionServiceUsingMojoFactory( - std::move(m_proxyResolverFactory), + std::move(proxyResolver), std::unique_ptr<net::ProxyConfigService>(proxyConfigService), - net::PacFileFetcherImpl::Create(m_urlRequestContext.get()), + net::PacFileFetcherImpl::CreateWithFileUrlSupport(m_urlRequestContext.get()), m_dhcpPacFileFetcherFactory->Create(m_urlRequestContext.get()), host_resolver.get(), nullptr /* NetLog */, @@ -642,8 +643,8 @@ void ProfileIODataQt::updateStorageSettings() new ProxyConfigServiceQt( net::ProxyResolutionService::CreateSystemProxyConfigService( content::BrowserThread::GetTaskRunnerForThread(content::BrowserThread::IO))); - m_proxyResolverFactory = ChromeMojoProxyResolverFactory::CreateWithStrongBinding(); - + //pass interface to io thread + m_proxyResolverFactoryInterface = ChromeMojoProxyResolverFactory::CreateWithStrongBinding().PassInterface(); if (m_initialized) content::BrowserThread::PostTask(content::BrowserThread::IO, FROM_HERE, base::Bind(&ProfileIODataQt::generateAllStorage, m_weakPtr)); |