summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/net/dns_global.cc29
-rw-r--r--net/base/dns_resolution_observer.cc5
2 files changed, 13 insertions, 21 deletions
diff --git a/chrome/browser/net/dns_global.cc b/chrome/browser/net/dns_global.cc
index 46160c8..e19e0b6 100644
--- a/chrome/browser/net/dns_global.cc
+++ b/chrome/browser/net/dns_global.cc
@@ -346,25 +346,20 @@ void InitDnsPrefetch(PrefService* user_prefs) {
const TimeDelta kAllowableShutdownTime(TimeDelta::FromSeconds(10));
DCHECK(NULL == dns_master);
if (!dns_master) {
- DnsMaster* new_master = new DnsMaster(kAllowableShutdownTime);
- if (InterlockedCompareExchangePointer(
- reinterpret_cast<PVOID*>(&dns_master), new_master, NULL)) {
- delete new_master;
- } else {
- // We did the initialization, so we should prime the pump, and set up
- // the DNS resolution system to run.
- off_the_record_observer.Register();
-
- if (user_prefs) {
- bool enabled = user_prefs->GetBoolean(prefs::kDnsPrefetchingEnabled);
- EnableDnsPrefetch(enabled);
- }
+ dns_master = new DnsMaster(kAllowableShutdownTime);
+ // We did the initialization, so we should prime the pump, and set up
+ // the DNS resolution system to run.
+ off_the_record_observer.Register();
+
+ if (user_prefs) {
+ bool enabled = user_prefs->GetBoolean(prefs::kDnsPrefetchingEnabled);
+ EnableDnsPrefetch(enabled);
+ }
- DLOG(INFO) << "DNS Prefetch service started";
+ DLOG(INFO) << "DNS Prefetch service started";
- // Start observing real HTTP stack resolutions.
- net::AddDnsResolutionObserver(&dns_resolution_observer);
- }
+ // Start observing real HTTP stack resolutions.
+ net::AddDnsResolutionObserver(&dns_resolution_observer);
}
}
diff --git a/net/base/dns_resolution_observer.cc b/net/base/dns_resolution_observer.cc
index f65c2c6..71c2c10 100644
--- a/net/base/dns_resolution_observer.cc
+++ b/net/base/dns_resolution_observer.cc
@@ -20,10 +20,7 @@ void AddDnsResolutionObserver(DnsResolutionObserver* new_observer) {
if (new_observer == dns_resolution_observer)
return; // Facilitate unit tests that init/teardown repeatedly.
DCHECK(!dns_resolution_observer);
- if (InterlockedCompareExchangePointer(
- reinterpret_cast<PVOID*>(&dns_resolution_observer),
- new_observer, NULL))
- DCHECK(0) << "Second attempt to setup observer";
+ dns_resolution_observer = new_observer;
}
DnsResolutionObserver* RemoveDnsResolutionObserver() {