Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1568)

Unified Diff: net/dns/single_request_host_resolver.cc

Issue 2116983002: Change HostResolver::Resolve() to take an std::unique_ptr<Request>* rather than a RequestHandle* (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: http_stream_factory_impl_job_controller_unittest RequestHandle* to unique_ptr Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/dns/single_request_host_resolver.cc
diff --git a/net/dns/single_request_host_resolver.cc b/net/dns/single_request_host_resolver.cc
index 7974abafeef3518983a1d4604e3f5382c6f6d96c..825e28a40ee39ad66737a1d092a94572b2f275de 100644
--- a/net/dns/single_request_host_resolver.cc
+++ b/net/dns/single_request_host_resolver.cc
@@ -14,11 +14,10 @@ namespace net {
SingleRequestHostResolver::SingleRequestHostResolver(HostResolver* resolver)
: resolver_(resolver),
- cur_request_(NULL),
callback_(
base::Bind(&SingleRequestHostResolver::OnResolveCompletion,
base::Unretained(this))) {
- DCHECK(resolver_ != NULL);
+ DCHECK(resolver_ != nullptr);
}
SingleRequestHostResolver::~SingleRequestHostResolver() {
@@ -34,7 +33,7 @@ int SingleRequestHostResolver::Resolve(const HostResolver::RequestInfo& info,
DCHECK_EQ(false, callback.is_null());
DCHECK(cur_request_callback_.is_null()) << "resolver already in use";
- HostResolver::RequestHandle request = NULL;
+ std::unique_ptr<HostResolver::Request> request;
// We need to be notified of completion before |callback| is called, so that
// we can clear out |cur_request_*|.
@@ -47,7 +46,7 @@ int SingleRequestHostResolver::Resolve(const HostResolver::RequestInfo& info,
if (rv == ERR_IO_PENDING) {
DCHECK_EQ(false, callback.is_null());
// Cleared in OnResolveCompletion().
- cur_request_ = request;
+ cur_request_ = std::move(request);
cur_request_callback_ = callback;
}
@@ -55,11 +54,8 @@ int SingleRequestHostResolver::Resolve(const HostResolver::RequestInfo& info,
}
void SingleRequestHostResolver::Cancel() {
- if (!cur_request_callback_.is_null()) {
- resolver_->CancelRequest(cur_request_);
- cur_request_ = NULL;
- cur_request_callback_.Reset();
- }
+ cur_request_.reset();
+ cur_request_callback_.Reset();
}
void SingleRequestHostResolver::OnResolveCompletion(int result) {
@@ -69,7 +65,7 @@ void SingleRequestHostResolver::OnResolveCompletion(int result) {
CompletionCallback callback = cur_request_callback_;
// Clear the outstanding request information.
- cur_request_ = NULL;
+ cur_request_.reset();
cur_request_callback_.Reset();
// Call the user's original callback.

Powered by Google App Engine
This is Rietveld 408576698