diff options
author | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-06 19:37:13 +0000 |
---|---|---|
committer | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-06 19:37:13 +0000 |
commit | a2e7635d1041978c2bd9cac44efdc6c9b842e049 (patch) | |
tree | 73f431c43c404c1c74d639c1d39c5dcf59d150bc /net/proxy/proxy_service.h | |
parent | 1fce002c881f8e6e3645aa1bd3b07c43d497773f (diff) | |
download | chromium_src-a2e7635d1041978c2bd9cac44efdc6c9b842e049.zip chromium_src-a2e7635d1041978c2bd9cac44efdc6c9b842e049.tar.gz chromium_src-a2e7635d1041978c2bd9cac44efdc6c9b842e049.tar.bz2 |
Re-order some declarations in ProxyService, to ensure that deletion of InitProxyResolver happens *after* the deletion of ProxyResolver.
BUG=24864
TEST=ProxyServiceTest.DeleteWhileInitProxyResolverHasOutstandingFetch, ProxyServiceTest.DeleteWhileInitProxyResolverHasOutstandingSet
Review URL: http://codereview.chromium.org/519060
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35643 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/proxy/proxy_service.h')
-rw-r--r-- | net/proxy/proxy_service.h | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/net/proxy/proxy_service.h b/net/proxy/proxy_service.h index ed02b03..2c421d2 100644 --- a/net/proxy/proxy_service.h +++ b/net/proxy/proxy_service.h @@ -231,12 +231,6 @@ class ProxyService : public base::RefCountedThreadSafe<ProxyService> { // heuristic). static bool IsLocalName(const GURL& url); - // Helper to download the PAC script (wpad + custom) and apply fallback rules. - scoped_ptr<InitProxyResolver> init_proxy_resolver_; - - // Log from the *last* time |init_proxy_resolver_.Init()| was called, or NULL. - scoped_refptr<LoadLog> init_proxy_resolver_log_; - scoped_ptr<ProxyConfigService> config_service_; scoped_ptr<ProxyResolver> resolver_; @@ -266,6 +260,16 @@ class ProxyService : public base::RefCountedThreadSafe<ProxyService> { // Callback for when |init_proxy_resolver_| is done. CompletionCallbackImpl<ProxyService> init_proxy_resolver_callback_; + + // Helper to download the PAC script (wpad + custom) and apply fallback rules. + // + // Note that the declaration is important here: |proxy_script_fetcher_| and + // |proxy_resolver_| must outlive |init_proxy_resolver_|. + scoped_ptr<InitProxyResolver> init_proxy_resolver_; + + // Log from the *last* time |init_proxy_resolver_.Init()| was called, or NULL. + scoped_refptr<LoadLog> init_proxy_resolver_log_; + DISALLOW_COPY_AND_ASSIGN(ProxyService); }; |