diff options
author | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-18 03:58:09 +0000 |
---|---|---|
committer | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-18 03:58:09 +0000 |
commit | 80d6524d33061e0e4f7b06dd87ee94de3e05c7a8 (patch) | |
tree | 05719af6d66e6a107aeb056a020645ae0f483e82 /net/http/http_network_session.h | |
parent | 22cdd93852c8f0782cb86b066cfcd95a9121912b (diff) | |
download | chromium_src-80d6524d33061e0e4f7b06dd87ee94de3e05c7a8.zip chromium_src-80d6524d33061e0e4f7b06dd87ee94de3e05c7a8.tar.gz chromium_src-80d6524d33061e0e4f7b06dd87ee94de3e05c7a8.tar.bz2 |
Reference count ProxyService.
This is necessary since ProxyService is getting shared between chrome's url request contexts (off the record, media), and the current way it is being shared could result in free memory read/writes during shutdown.
This is a step towards fixing http://crbug.com/15289.
BUG=http://crbug.com/15289
TEST=The existing tests should continue to pass following this refactor.
Review URL: http://codereview.chromium.org/165430
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23612 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/http/http_network_session.h')
-rw-r--r-- | net/http/http_network_session.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/http/http_network_session.h b/net/http/http_network_session.h index 487ade4..9e867d7 100644 --- a/net/http/http_network_session.h +++ b/net/http/http_network_session.h @@ -6,16 +6,16 @@ #define NET_HTTP_HTTP_NETWORK_SESSION_H_ #include "base/ref_counted.h" +#include "net/base/host_resolver.h" #include "net/base/ssl_client_auth_cache.h" #include "net/base/ssl_config_service.h" #include "net/http/http_auth_cache.h" +#include "net/proxy/proxy_service.h" #include "net/socket/tcp_client_socket_pool.h" namespace net { class ClientSocketFactory; -class HostResolver; -class ProxyService; // This class holds session objects used by HttpNetworkTransaction objects. class HttpNetworkSession : public base::RefCounted<HttpNetworkSession> { @@ -51,7 +51,7 @@ class HttpNetworkSession : public base::RefCounted<HttpNetworkSession> { SSLClientAuthCache ssl_client_auth_cache_; scoped_refptr<ClientSocketPool> connection_pool_; scoped_refptr<HostResolver> host_resolver_; - ProxyService* proxy_service_; + scoped_refptr<ProxyService> proxy_service_; #if defined(OS_WIN) // TODO(port): Port the SSLConfigService class to Linux and Mac OS X. SSLConfigService ssl_config_service_; |