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

Unified Diff: components/cronet/stale_host_resolver.cc

Issue 2470913003: cronet: Fix StaleHostResolver.AddressListDelta histogram. (Closed)
Patch Set: Make requested change. Created 4 years, 1 month 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/cronet/stale_host_resolver.cc
diff --git a/components/cronet/stale_host_resolver.cc b/components/cronet/stale_host_resolver.cc
index edf011344e3abc0b2d9b843e8d04eda0a0c8ec85..2d4c0779730c8b35e70c3ecd7d4f19a9e165bcfd 100644
--- a/components/cronet/stale_host_resolver.cc
+++ b/components/cronet/stale_host_resolver.cc
@@ -139,10 +139,10 @@ class StaleHostResolver::RequestImpl {
void OnHandleDestroyed();
// Fills |*result_addresses_| if rv is OK and returns rv.
- int HandleResult(int rv, net::AddressList* addresses);
+ int HandleResult(int rv, const net::AddressList& addresses);
// Fills |*result_addresses_| if rv is OK and calls |result_callback_| with
// rv.
- void ReturnResult(int rv, net::AddressList* addresses);
+ void ReturnResult(int rv, const net::AddressList& addresses);
void MaybeDeleteThis();
@@ -213,7 +213,7 @@ int StaleHostResolver::RequestImpl::Start(
// If it's a fresh cache hit (or literal), return it synchronously.
if (cache_rv != net::ERR_DNS_CACHE_MISS && !stale_info.is_stale()) {
RecordSynchronousRequest();
- return HandleResult(cache_rv, &cache_addresses);
+ return HandleResult(cache_rv, cache_addresses);
}
result_callback_ = result_callback;
@@ -254,7 +254,7 @@ void StaleHostResolver::RequestImpl::OnStaleDelayElapsed() {
DCHECK(!have_returned());
DCHECK(have_stale_data());
- ReturnResult(stale_error_, &stale_addresses_);
+ ReturnResult(stale_error_, stale_addresses_);
// The request needs to wait for both the network request to complete (to
// backfill the cache) and the caller to delete the handle before deleting
@@ -271,7 +271,7 @@ void StaleHostResolver::RequestImpl::OnNetworkRequestComplete(int error) {
if (!have_returned()) {
if (have_stale_data())
stale_timer_.Stop();
- ReturnResult(error, &network_addresses_);
+ ReturnResult(error, network_addresses_);
}
if (!have_handle())
@@ -294,20 +294,20 @@ void StaleHostResolver::RequestImpl::OnHandleDestroyed() {
delete this;
}
-int StaleHostResolver::RequestImpl::HandleResult(int rv,
- net::AddressList* addresses) {
+int StaleHostResolver::RequestImpl::HandleResult(
+ int rv,
+ const net::AddressList& addresses) {
DCHECK(result_addresses_);
- if (rv == net::OK) {
- *result_addresses_ = *addresses;
- addresses->clear();
- }
+ if (rv == net::OK)
+ *result_addresses_ = addresses;
result_addresses_ = nullptr;
return rv;
}
-void StaleHostResolver::RequestImpl::ReturnResult(int rv,
- net::AddressList* addresses) {
+void StaleHostResolver::RequestImpl::ReturnResult(
+ int rv,
+ const net::AddressList& addresses) {
DCHECK(result_callback_);
returning_result_ = true;
base::ResetAndReturn(&result_callback_).Run(HandleResult(rv, addresses));
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698