summaryrefslogtreecommitdiffstats
path: root/net/proxy
diff options
context:
space:
mode:
Diffstat (limited to 'net/proxy')
-rw-r--r--net/proxy/proxy_resolver_js_bindings.cc2
-rw-r--r--net/proxy/proxy_resolver_js_bindings_unittest.cc24
-rw-r--r--net/proxy/proxy_script_fetcher_unittest.cc1
-rw-r--r--net/proxy/proxy_service.cc2
-rw-r--r--net/proxy/sync_host_resolver_bridge.cc2
-rw-r--r--net/proxy/sync_host_resolver_bridge_unittest.cc21
6 files changed, 27 insertions, 25 deletions
diff --git a/net/proxy/proxy_resolver_js_bindings.cc b/net/proxy/proxy_resolver_js_bindings.cc
index 5f9307e..3888663 100644
--- a/net/proxy/proxy_resolver_js_bindings.cc
+++ b/net/proxy/proxy_resolver_js_bindings.cc
@@ -285,7 +285,7 @@ class DefaultJSBindings : public ProxyResolverJSBindings {
}
}
- scoped_refptr<HostResolver> host_resolver_;
+ HostResolver* const host_resolver_;
NetLog* net_log_;
};
diff --git a/net/proxy/proxy_resolver_js_bindings_unittest.cc b/net/proxy/proxy_resolver_js_bindings_unittest.cc
index 3b10631..6b33a34 100644
--- a/net/proxy/proxy_resolver_js_bindings_unittest.cc
+++ b/net/proxy/proxy_resolver_js_bindings_unittest.cc
@@ -111,11 +111,11 @@ class MockFailingHostResolver : public HostResolver {
};
TEST(ProxyResolverJSBindingsTest, DnsResolve) {
- scoped_refptr<MockHostResolver> host_resolver(new MockHostResolver);
+ scoped_ptr<MockHostResolver> host_resolver(new MockHostResolver);
// Get a hold of a DefaultJSBindings* (it is a hidden impl class).
scoped_ptr<ProxyResolverJSBindings> bindings(
- ProxyResolverJSBindings::CreateDefault(host_resolver, NULL));
+ ProxyResolverJSBindings::CreateDefault(host_resolver.get(), NULL));
std::string ip_address;
@@ -138,9 +138,11 @@ TEST(ProxyResolverJSBindingsTest, DnsResolve) {
}
TEST(ProxyResolverJSBindingsTest, MyIpAddress) {
+ scoped_ptr<MockHostResolver> host_resolver(new MockHostResolver);
+
// Get a hold of a DefaultJSBindings* (it is a hidden impl class).
scoped_ptr<ProxyResolverJSBindings> bindings(
- ProxyResolverJSBindings::CreateDefault(new MockHostResolver, NULL));
+ ProxyResolverJSBindings::CreateDefault(host_resolver.get(), NULL));
// Our IP address is always going to be 127.0.0.1, since we are using a
// mock host resolver.
@@ -163,11 +165,11 @@ TEST(ProxyResolverJSBindingsTest, MyIpAddress) {
// myIpAddressEx()
// dnsResolveEx()
TEST(ProxyResolverJSBindingsTest, RestrictAddressFamily) {
- scoped_refptr<MockHostResolver> host_resolver(new MockHostResolver);
+ scoped_ptr<MockHostResolver> host_resolver(new MockHostResolver);
// Get a hold of a DefaultJSBindings* (it is a hidden impl class).
scoped_ptr<ProxyResolverJSBindings> bindings(
- ProxyResolverJSBindings::CreateDefault(host_resolver, NULL));
+ ProxyResolverJSBindings::CreateDefault(host_resolver.get(), NULL));
// Make it so requests resolve to particular address patterns based on family:
// IPV4_ONLY --> 192.168.1.*
@@ -219,12 +221,12 @@ TEST(ProxyResolverJSBindingsTest, RestrictAddressFamily) {
// separated list of addresses (as opposed to the non-Ex versions which
// just return the first result).
TEST(ProxyResolverJSBindingsTest, ExFunctionsReturnList) {
- scoped_refptr<HostResolver> host_resolver(
+ scoped_ptr<HostResolver> host_resolver(
new MockHostResolverWithMultipleResults);
// Get a hold of a DefaultJSBindings* (it is a hidden impl class).
scoped_ptr<ProxyResolverJSBindings> bindings(
- ProxyResolverJSBindings::CreateDefault(host_resolver, NULL));
+ ProxyResolverJSBindings::CreateDefault(host_resolver.get(), NULL));
std::string ip_addresses;
@@ -236,12 +238,12 @@ TEST(ProxyResolverJSBindingsTest, ExFunctionsReturnList) {
}
TEST(ProxyResolverJSBindingsTest, PerRequestDNSCache) {
- scoped_refptr<MockFailingHostResolver> host_resolver(
+ scoped_ptr<MockFailingHostResolver> host_resolver(
new MockFailingHostResolver);
// Get a hold of a DefaultJSBindings* (it is a hidden impl class).
scoped_ptr<ProxyResolverJSBindings> bindings(
- ProxyResolverJSBindings::CreateDefault(host_resolver, NULL));
+ ProxyResolverJSBindings::CreateDefault(host_resolver.get(), NULL));
std::string ip_address;
@@ -286,14 +288,14 @@ TEST(ProxyResolverJSBindingsTest, PerRequestDNSCache) {
// Test that when a binding is called, it logs to the per-request NetLog.
TEST(ProxyResolverJSBindingsTest, NetLog) {
- scoped_refptr<MockFailingHostResolver> host_resolver(
+ scoped_ptr<MockFailingHostResolver> host_resolver(
new MockFailingHostResolver);
CapturingNetLog global_log(CapturingNetLog::kUnbounded);
// Get a hold of a DefaultJSBindings* (it is a hidden impl class).
scoped_ptr<ProxyResolverJSBindings> bindings(
- ProxyResolverJSBindings::CreateDefault(host_resolver, &global_log));
+ ProxyResolverJSBindings::CreateDefault(host_resolver.get(), &global_log));
// Attach a capturing NetLog as the current request's log stream.
CapturingNetLog log(CapturingNetLog::kUnbounded);
diff --git a/net/proxy/proxy_script_fetcher_unittest.cc b/net/proxy/proxy_script_fetcher_unittest.cc
index 8980c0e..64754a4 100644
--- a/net/proxy/proxy_script_fetcher_unittest.cc
+++ b/net/proxy/proxy_script_fetcher_unittest.cc
@@ -49,6 +49,7 @@ class RequestContext : public URLRequestContext {
private:
~RequestContext() {
delete http_transaction_factory_;
+ delete host_resolver_;
}
};
diff --git a/net/proxy/proxy_service.cc b/net/proxy/proxy_service.cc
index dfdacde..80a849a 100644
--- a/net/proxy/proxy_service.cc
+++ b/net/proxy/proxy_service.cc
@@ -185,7 +185,7 @@ class ProxyResolverFactoryForV8 : public ProxyResolverFactory {
}
private:
- scoped_refptr<HostResolver> async_host_resolver_;
+ HostResolver* const async_host_resolver_;
MessageLoop* io_loop_;
// Thread-safe wrapper around a non-threadsafe NetLog implementation. This
diff --git a/net/proxy/sync_host_resolver_bridge.cc b/net/proxy/sync_host_resolver_bridge.cc
index 6c62c7d..bcb05d6 100644
--- a/net/proxy/sync_host_resolver_bridge.cc
+++ b/net/proxy/sync_host_resolver_bridge.cc
@@ -50,7 +50,7 @@ class SyncHostResolverBridge::Core
// Not called on |host_resolver_loop_|.
int WaitForResolveCompletion();
- const scoped_refptr<HostResolver> host_resolver_;
+ HostResolver* const host_resolver_;
MessageLoop* const host_resolver_loop_;
net::CompletionCallbackImpl<Core> callback_;
// The result from the current request (set on |host_resolver_loop_|).
diff --git a/net/proxy/sync_host_resolver_bridge_unittest.cc b/net/proxy/sync_host_resolver_bridge_unittest.cc
index c10c3e6..cd4264e 100644
--- a/net/proxy/sync_host_resolver_bridge_unittest.cc
+++ b/net/proxy/sync_host_resolver_bridge_unittest.cc
@@ -116,22 +116,23 @@ class SyncProxyResolver : public ProxyResolver {
}
private:
- scoped_refptr<SyncHostResolverBridge> host_resolver_;
+ SyncHostResolverBridge* const host_resolver_;
};
class SyncProxyResolverFactory : public ProxyResolverFactory {
public:
+ // Takes ownership of |sync_host_resolver|.
explicit SyncProxyResolverFactory(SyncHostResolverBridge* sync_host_resolver)
: ProxyResolverFactory(false),
sync_host_resolver_(sync_host_resolver) {
}
virtual ProxyResolver* CreateProxyResolver() {
- return new SyncProxyResolver(sync_host_resolver_);
+ return new SyncProxyResolver(sync_host_resolver_.get());
}
private:
- scoped_refptr<SyncHostResolverBridge> sync_host_resolver_;
+ const scoped_ptr<SyncHostResolverBridge> sync_host_resolver_;
};
// This helper thread is used to create the circumstances for the deadlock.
@@ -145,18 +146,18 @@ class IOThread : public base::Thread {
Stop();
}
- const scoped_refptr<BlockableHostResolver>& async_resolver() {
- return async_resolver_;
+ BlockableHostResolver* async_resolver() {
+ return async_resolver_.get();
}
protected:
virtual void Init() {
- async_resolver_ = new BlockableHostResolver();
+ async_resolver_.reset(new BlockableHostResolver());
// Create a synchronous host resolver that operates the async host
// resolver on THIS thread.
- scoped_refptr<SyncHostResolverBridge> sync_resolver =
- new SyncHostResolverBridge(async_resolver_, message_loop());
+ SyncHostResolverBridge* sync_resolver =
+ new SyncHostResolverBridge(async_resolver_.get(), message_loop());
proxy_resolver_.reset(
new MultiThreadedProxyResolver(
@@ -190,14 +191,12 @@ class IOThread : public base::Thread {
// During the teardown sequence of the single threaded proxy resolver,
// the outstanding host resolve should have been cancelled.
EXPECT_TRUE(async_resolver_->was_request_cancelled());
-
- async_resolver_ = NULL;
}
private:
// This (async) host resolver will outlive the thread that is operating it
// synchronously.
- scoped_refptr<BlockableHostResolver> async_resolver_;
+ scoped_ptr<BlockableHostResolver> async_resolver_;
scoped_ptr<ProxyResolver> proxy_resolver_;