summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browsing_data_appcache_helper.cc
diff options
context:
space:
mode:
authorjochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-15 09:53:29 +0000
committerjochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-15 09:53:29 +0000
commitf272970905d631af495244a06ab770be24afaed9 (patch)
treeb45f42305dabca1195d075a7ef5b48a0bb1af614 /chrome/browser/browsing_data_appcache_helper.cc
parent6bf710d8db08e7be62d618cd1788dcabec334200 (diff)
downloadchromium_src-f272970905d631af495244a06ab770be24afaed9.zip
chromium_src-f272970905d631af495244a06ab770be24afaed9.tar.gz
chromium_src-f272970905d631af495244a06ab770be24afaed9.tar.bz2
Only store unique entries in the canned browsing data helpers.
BUG=45230 TEST=Canned*.Unique Review URL: http://codereview.chromium.org/2854045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52470 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browsing_data_appcache_helper.cc')
-rw-r--r--chrome/browser/browsing_data_appcache_helper.cc12
1 files changed, 11 insertions, 1 deletions
diff --git a/chrome/browser/browsing_data_appcache_helper.cc b/chrome/browser/browsing_data_appcache_helper.cc
index 54b08ac..3ce7106 100644
--- a/chrome/browser/browsing_data_appcache_helper.cc
+++ b/chrome/browser/browsing_data_appcache_helper.cc
@@ -108,7 +108,17 @@ CannedBrowsingDataAppCacheHelper::CannedBrowsingDataAppCacheHelper(
void CannedBrowsingDataAppCacheHelper::AddAppCache(const GURL& manifest_url) {
typedef std::map<GURL, appcache::AppCacheInfoVector> InfoByOrigin;
InfoByOrigin& origin_map = info_collection_->infos_by_origin;
- origin_map[manifest_url.GetOrigin()].push_back(
+ appcache::AppCacheInfoVector& appcache_infos_ =
+ origin_map[manifest_url.GetOrigin()];
+
+ for (appcache::AppCacheInfoVector::iterator
+ appcache = appcache_infos_.begin(); appcache != appcache_infos_.end();
+ ++appcache) {
+ if (appcache->manifest_url == manifest_url)
+ return;
+ }
+
+ appcache_infos_.push_back(
appcache::AppCacheInfo(manifest_url,
0,
base::Time(),