aboutsummaryrefslogtreecommitdiff
path: root/ResolverController.cpp
diff options
context:
space:
mode:
authorMike Yu <yumike@google.com>2022-07-13 12:20:40 +0000
committerMike Yu <yumike@google.com>2022-07-18 11:38:41 +0000
commit21975f314991acbdced93a35ff3c0f7c4c021336 (patch)
tree1738992e3ad5b20e994d57e42288e0043b604d4c /ResolverController.cpp
parent0eb6bc0173855959d116871773f2c43bcff26f2f (diff)
Refactor DnsResponderClient::GetResolverInfo
Refactor GetResolverInfo() to return a wrapper, so callers won't have to define several variables to pass them to the function. Apart from that, this change fixes a bug that the DnsResolver crashes if wait_for_pending_req_timeout_count is an empty vector. Bug: 237766689 Test: atest Change-Id: I4ce05be760eca7f52e36c9b0b79852a054bfc757
Diffstat (limited to 'ResolverController.cpp')
-rw-r--r--ResolverController.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/ResolverController.cpp b/ResolverController.cpp
index a430a08c..bb5f32d5 100644
--- a/ResolverController.cpp
+++ b/ResolverController.cpp
@@ -100,6 +100,7 @@ int getDnsInfo(unsigned netId, std::vector<std::string>* servers, std::vector<st
domains->clear();
*params = res_params{};
stats->clear();
+ wait_for_pending_req_timeout_count->clear();
int res_wait_for_pending_req_timeout_count;
int revision_id = android_net_res_stats_get_info_for_net(
netId, &nscount, res_servers, &dcount, res_domains, params, res_stats,
@@ -149,7 +150,7 @@ int getDnsInfo(unsigned netId, std::vector<std::string>* servers, std::vector<st
domains->push_back(res_domains[i]);
}
- (*wait_for_pending_req_timeout_count)[0] = res_wait_for_pending_req_timeout_count;
+ wait_for_pending_req_timeout_count->push_back(res_wait_for_pending_req_timeout_count);
return 0;
}