Index: chrome/browser/browsing_data/browsing_data_remover.cc |
diff --git a/chrome/browser/browsing_data/browsing_data_remover.cc b/chrome/browser/browsing_data/browsing_data_remover.cc |
index 1e39f5819e3611aab2b4b0260331ad12ce5e6ba8..381af07e79139842b9f1a0bca8bbc027c54089c8 100644 |
--- a/chrome/browser/browsing_data/browsing_data_remover.cc |
+++ b/chrome/browser/browsing_data/browsing_data_remover.cc |
@@ -189,6 +189,7 @@ BrowsingDataRemover::BrowsingDataRemover(Profile* profile, |
waiting_for_clear_cache_(false), |
waiting_for_clear_content_licenses_(false), |
waiting_for_clear_cookies_count_(0), |
+ waiting_for_clear_domain_reliability_monitor_(false), |
waiting_for_clear_form_(false), |
waiting_for_clear_history_(false), |
waiting_for_clear_hostname_resolution_cache_(false), |
@@ -669,6 +670,15 @@ void BrowsingDataRemover::RemoveImpl(int remove_mask, |
delete_begin_, |
base::Bind(&BrowsingDataRemover::OnClearedNetworkingHistory, |
base::Unretained(this))); |
+ |
+ if (remove_mask & (REMOVE_COOKIES | REMOVE_HISTORY)) { |
+ waiting_for_clear_domain_reliability_monitor_ = true; |
+ bool clear_contexts = !!(remove_mask & REMOVE_COOKIES); |
+ profile_->ClearDomainReliabilityMonitor( |
+ clear_contexts, |
+ base::Bind(&BrowsingDataRemover::OnClearedDomainReliabilityMonitor, |
+ base::Unretained(this))); |
+ } |
} |
void BrowsingDataRemover::AddObserver(Observer* observer) { |
@@ -721,6 +731,7 @@ bool BrowsingDataRemover::AllDone() { |
!waiting_for_clear_autofill_origin_urls_ && |
!waiting_for_clear_cache_ && !waiting_for_clear_nacl_cache_ && |
!waiting_for_clear_cookies_count_ && !waiting_for_clear_history_ && |
+ !waiting_for_clear_domain_reliability_monitor_ && |
!waiting_for_clear_logged_in_predictor_ && |
!waiting_for_clear_networking_history_ && |
!waiting_for_clear_server_bound_certs_ && |
@@ -1127,3 +1138,9 @@ void BrowsingDataRemover::OnClearedWebRtcLogs() { |
NotifyAndDeleteIfDone(); |
} |
#endif |
+ |
+void BrowsingDataRemover::OnClearedDomainReliabilityMonitor() { |
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
+ waiting_for_clear_domain_reliability_monitor_ = false; |
+ NotifyAndDeleteIfDone(); |
+} |