summaryrefslogtreecommitdiffstats
path: root/chrome/browser/io_thread.cc
diff options
context:
space:
mode:
authorwillchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-24 07:30:01 +0000
committerwillchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-24 07:30:01 +0000
commit52617df3c0d6b2f57763d52dd3c24dab32154d61 (patch)
treecc40dfe01feea9eaf8471259538761de59ab46f8 /chrome/browser/io_thread.cc
parenta95986a837fc86e079b5c6dac357636478b50092 (diff)
downloadchromium_src-52617df3c0d6b2f57763d52dd3c24dab32154d61.zip
chromium_src-52617df3c0d6b2f57763d52dd3c24dab32154d61.tar.gz
chromium_src-52617df3c0d6b2f57763d52dd3c24dab32154d61.tar.bz2
Don't leak proxy script fetcher's http transaction factories.
BUG=none TEST=none Review URL: http://codereview.chromium.org/6012008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70140 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/io_thread.cc')
-rw-r--r--chrome/browser/io_thread.cc28
1 files changed, 15 insertions, 13 deletions
diff --git a/chrome/browser/io_thread.cc b/chrome/browser/io_thread.cc
index e337ba5..f20c8a6 100644
--- a/chrome/browser/io_thread.cc
+++ b/chrome/browser/io_thread.cc
@@ -189,19 +189,7 @@ ConstructProxyScriptFetcherContext(IOThread::Globals* globals,
globals->http_auth_handler_factory.get());
context->set_proxy_service(globals->proxy_script_fetcher_proxy_service.get());
context->set_http_transaction_factory(
- new net::HttpNetworkLayer(
- globals->client_socket_factory,
- globals->host_resolver.get(),
- globals->cert_verifier.get(),
- globals->dnsrr_resolver.get(),
- NULL /* dns_cert_checker */,
- NULL /* ssl_host_info_factory */,
- globals->proxy_script_fetcher_proxy_service.get(),
- globals->ssl_config_service.get(),
- new net::SpdySessionPool(globals->ssl_config_service.get()),
- globals->http_auth_handler_factory.get(),
- &globals->network_delegate,
- net_log));
+ globals->proxy_script_fetcher_http_transaction_factory.get());
// In-memory cookie store.
context->set_cookie_store(new net::CookieMonster(NULL, NULL));
return context;
@@ -345,6 +333,20 @@ void IOThread::Init() {
// For the ProxyScriptFetcher, we use a direct ProxyService.
globals_->proxy_script_fetcher_proxy_service =
net::ProxyService::CreateDirectWithNetLog(net_log_);
+ globals_->proxy_script_fetcher_http_transaction_factory.reset(
+ new net::HttpNetworkLayer(
+ globals_->client_socket_factory,
+ globals_->host_resolver.get(),
+ globals_->cert_verifier.get(),
+ globals_->dnsrr_resolver.get(),
+ NULL /* dns_cert_checker */,
+ NULL /* ssl_host_info_factory */,
+ globals_->proxy_script_fetcher_proxy_service.get(),
+ globals_->ssl_config_service.get(),
+ new net::SpdySessionPool(globals_->ssl_config_service.get()),
+ globals_->http_auth_handler_factory.get(),
+ &globals_->network_delegate,
+ net_log_));
scoped_refptr<URLRequestContext> proxy_script_fetcher_context =
ConstructProxyScriptFetcherContext(globals_, net_log_);