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

Unified Diff: chrome/browser/predictors/resource_prefetch_predictor.cc

Issue 2790633002: predictors: Remove unknown fields from PrecacheManifest before store it. (Closed)
Patch Set: Move implementation into .cc file. Created 3 years, 9 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 | « no previous file | chrome/browser/predictors/resource_prefetch_predictor_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/predictors/resource_prefetch_predictor.cc
diff --git a/chrome/browser/predictors/resource_prefetch_predictor.cc b/chrome/browser/predictors/resource_prefetch_predictor.cc
index ad3e824f5ea5adadb37ada20bb5fbf40412e3ae5..42a811b969e62d807d18cb72ed71206ae29be14e 100644
--- a/chrome/browser/predictors/resource_prefetch_predictor.cc
+++ b/chrome/browser/predictors/resource_prefetch_predictor.cc
@@ -221,6 +221,22 @@ void ReportPredictionAccuracy(
static_cast<int>(redirect_status), static_cast<int>(RedirectStatus::MAX));
}
+void RemoveUnknownFieldsFromPrecacheManifest(
+ precache::PrecacheManifest* manifest) {
+ manifest->mutable_unknown_fields()->clear();
+ for (auto& resource : *manifest->mutable_resource())
+ resource.mutable_unknown_fields()->clear();
+ if (manifest->has_experiments()) {
+ manifest->mutable_experiments()->mutable_unknown_fields()->clear();
+ for (auto& kv : *manifest->mutable_experiments()
+ ->mutable_resources_by_experiment_group()) {
+ kv.second.mutable_unknown_fields()->clear();
+ }
+ }
+ if (manifest->has_id())
+ manifest->mutable_id()->mutable_unknown_fields()->clear();
+}
+
} // namespace
////////////////////////////////////////////////////////////////////////////////
@@ -1466,6 +1482,8 @@ void ResourcePrefetchPredictor::OnManifestFetched(
cache_entry->second = manifest;
}
+ RemoveUnknownFieldsFromPrecacheManifest(&cache_entry->second);
+
BrowserThread::PostTask(
BrowserThread::DB, FROM_HERE,
base::Bind(&ResourcePrefetchPredictorTables::UpdateManifestData, tables_,
« no previous file with comments | « no previous file | chrome/browser/predictors/resource_prefetch_predictor_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698