Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(239)

Unified Diff: chrome/browser/chrome_net_benchmarking_message_filter.cc

Issue 2085643002: Don't clear the net predictors prefs on startup (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add TODO Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/chrome_net_benchmarking_message_filter.h ('k') | chrome/browser/net/predictor.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/chrome_net_benchmarking_message_filter.cc
diff --git a/chrome/browser/chrome_net_benchmarking_message_filter.cc b/chrome/browser/chrome_net_benchmarking_message_filter.cc
index b95edb47744fc37d27f1bc8e3b94023892d9f32c..ef57cf85d7d71cfc8166bd924077254023f6f51a 100644
--- a/chrome/browser/chrome_net_benchmarking_message_filter.cc
+++ b/chrome/browser/chrome_net_benchmarking_message_filter.cc
@@ -60,6 +60,13 @@ bool ChromeNetBenchmarkingMessageFilter::OnMessageReceived(
return handled;
}
+void ChromeNetBenchmarkingMessageFilter::OverrideThreadForMessage(
+ const IPC::Message& message,
+ content::BrowserThread::ID* thread) {
+ if (message.type() == ChromeViewHostMsg_ClearPredictorCache::ID)
+ *thread = content::BrowserThread::UI;
+}
+
void ChromeNetBenchmarkingMessageFilter::OnClearCache(IPC::Message* reply_msg) {
// This function is disabled unless the user has enabled
// benchmarking extensions.
@@ -126,13 +133,16 @@ void ChromeNetBenchmarkingMessageFilter::OnSetCacheMode(bool enabled) {
void ChromeNetBenchmarkingMessageFilter::OnClearPredictorCache() {
// This function is disabled unless the user has enabled
// benchmarking extensions.
+ DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
if (!CheckBenchmarkingEnabled()) {
NOTREACHED() << "Received unexpected benchmarking IPC";
return;
}
+ // TODO(623967): Ensure that the profile or predictor are not accessed after
+ // they have been shut down.
chrome_browser_net::Predictor* predictor = profile_->GetNetworkPredictor();
if (predictor)
- predictor->DiscardAllResults();
+ predictor->DiscardAllResultsAndClearPrefsOnUIThread();
}
bool ChromeNetBenchmarkingMessageFilter::CheckBenchmarkingEnabled() const {
« no previous file with comments | « chrome/browser/chrome_net_benchmarking_message_filter.h ('k') | chrome/browser/net/predictor.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698