Chromium Code Reviews| Index: extensions/browser/api/dns/dns_api.cc |
| diff --git a/extensions/browser/api/dns/dns_api.cc b/extensions/browser/api/dns/dns_api.cc |
| index 671254ba4026dc861652631cc4563b53484984f0..988ea93ca70430da31680f8824ff0bedf3a6d0e5 100644 |
| --- a/extensions/browser/api/dns/dns_api.cc |
| +++ b/extensions/browser/api/dns/dns_api.cc |
| @@ -23,9 +23,9 @@ namespace Resolve = extensions::api::dns::Resolve; |
| namespace extensions { |
| DnsResolveFunction::DnsResolveFunction() |
| - : resource_context_(NULL), |
| + : resource_context_(), |
| response_(false), |
| - request_handle_(new net::HostResolver::RequestHandle()), |
| + request_(), |
|
mmenke
2016/07/21 16:00:40
Not needed
maksims (do not use this acc)
2016/07/22 10:16:00
Done.
|
| addresses_(new net::AddressList) {} |
| DnsResolveFunction::~DnsResolveFunction() {} |
| @@ -58,13 +58,11 @@ void DnsResolveFunction::WorkOnIOThread() { |
| // determining its answer. |
| net::HostPortPair host_port_pair(hostname_, 0); |
| + std::unique_ptr<net::HostResolver::Request> request; |
|
mmenke
2016/07/21 16:00:40
Per other comments, this isn't needed.
maksims (do not use this acc)
2016/07/22 10:16:00
Done.
|
| net::HostResolver::RequestInfo request_info(host_port_pair); |
| int resolve_result = host_resolver->Resolve( |
| - request_info, |
| - net::DEFAULT_PRIORITY, |
| - addresses_.get(), |
| - base::Bind(&DnsResolveFunction::OnLookupFinished, this), |
| - request_handle_.get(), |
| + request_info, net::DEFAULT_PRIORITY, addresses_.get(), |
| + base::Bind(&DnsResolveFunction::OnLookupFinished, this), &request, |
| net::BoundNetLog()); |
| // Balanced in OnLookupFinished. |
| @@ -72,6 +70,8 @@ void DnsResolveFunction::WorkOnIOThread() { |
| if (resolve_result != net::ERR_IO_PENDING) |
| OnLookupFinished(resolve_result); |
| + if (resolve_result == net::ERR_IO_PENDING) |
| + request_ = std::move(request); |
| } |
| void DnsResolveFunction::RespondOnUIThread() { |