summaryrefslogtreecommitdiffstats
path: root/net/base/host_resolver.cc
diff options
context:
space:
mode:
authorwtc@google.com <wtc@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-07-28 23:45:23 +0000
committerwtc@google.com <wtc@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-07-28 23:45:23 +0000
commit1b66f31cbe79793c038c5afe09bb24dd2f25b8ad (patch)
treed4b9c2c0b8662a1b94bb66b8c096ebde76cc54ff /net/base/host_resolver.cc
parent236ef33ebbb7aae61d5f36d8dc4570674819c810 (diff)
downloadchromium_src-1b66f31cbe79793c038c5afe09bb24dd2f25b8ad.zip
chromium_src-1b66f31cbe79793c038c5afe09bb24dd2f25b8ad.tar.gz
chromium_src-1b66f31cbe79793c038c5afe09bb24dd2f25b8ad.tar.bz2
Create a constructor to construct an AddressList::Data
object with a struct addrinfo*. Fix the comment for the port parameter of HostResolver::Resolve. Make some changes suggested by cpplint. R=darin git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/base/host_resolver.cc')
-rw-r--r--net/base/host_resolver.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/net/base/host_resolver.cc b/net/base/host_resolver.cc
index f3091a6..101c5ec 100644
--- a/net/base/host_resolver.cc
+++ b/net/base/host_resolver.cc
@@ -84,8 +84,8 @@ struct HostResolver::Request :
Request* r = reinterpret_cast<Request*>(param);
// The HostResolver may have gone away.
if (r->addresses) {
- DCHECK(r->addresses);
- r->addresses->Adopt(r->results);
+ if (r->error == OK)
+ r->addresses->Adopt(r->results);
if (r->callback)
r->callback->Run(r->error);
} else if (r->results) {
@@ -94,7 +94,7 @@ struct HostResolver::Request :
r->Release();
}
- static DWORD CALLBACK DoLookup(void* param) {
+ static DWORD WINAPI DoLookup(void* param) {
Request* r = static_cast<Request*>(param);
r->error = ResolveAddrInfo(r->host, r->port, &r->results);
@@ -118,6 +118,7 @@ HostResolver::HostResolver() {
HostResolver::~HostResolver() {
if (request_) {
+ // Prevent the thread pool from running the callback.
request_->addresses = NULL;
request_->callback = NULL;
}