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

Unified Diff: chrome/browser/browsing_data/browsing_data_cookie_helper.cc

Issue 454623003: Store in memory cookies in a hash set instead of a list. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 4 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
Index: chrome/browser/browsing_data/browsing_data_cookie_helper.cc
diff --git a/chrome/browser/browsing_data/browsing_data_cookie_helper.cc b/chrome/browser/browsing_data/browsing_data_cookie_helper.cc
index 3d65a87a07192c1c2cf1a80575ea34bfd7a877e4..6efe314cea5563e885e4f499cd96f56130f637f9 100644
--- a/chrome/browser/browsing_data/browsing_data_cookie_helper.cc
+++ b/chrome/browser/browsing_data/browsing_data_cookie_helper.cc
@@ -116,8 +116,8 @@ CannedBrowsingDataCookieHelper* CannedBrowsingDataCookieHelper::Clone() {
for (OriginCookieListMap::iterator it = origin_cookie_list_map_.begin();
it != origin_cookie_list_map_.end();
++it) {
- net::CookieList* cookies = clone->GetCookiesFor(it->first);
- cookies->insert(cookies->begin(), it->second->begin(), it->second->end());
+ net::CookieHashSet* cookies = clone->GetCookiesFor(it->first);
+ cookies->insert(it->second->begin(), it->second->end());
}
return clone;
}
@@ -199,28 +199,18 @@ void CannedBrowsingDataCookieHelper::DeleteCookie(
bool CannedBrowsingDataCookieHelper::DeleteMatchingCookie(
const net::CanonicalCookie& add_cookie,
- net::CookieList* cookie_list) {
- typedef net::CookieList::iterator cookie_iterator;
- for (cookie_iterator cookie = cookie_list->begin();
- cookie != cookie_list->end(); ++cookie) {
- if (cookie->Name() == add_cookie.Name() &&
- cookie->Domain() == add_cookie.Domain()&&
- cookie->Path() == add_cookie.Path()) {
- cookie_list->erase(cookie);
- return true;
- }
- }
- return false;
+ net::CookieHashSet* cookie_list) {
+ return cookie_list->erase(add_cookie) > 0;
}
-net::CookieList* CannedBrowsingDataCookieHelper::GetCookiesFor(
+net::CookieHashSet* CannedBrowsingDataCookieHelper::GetCookiesFor(
const GURL& first_party_origin) {
OriginCookieListMap::iterator it =
origin_cookie_list_map_.find(first_party_origin);
if (it == origin_cookie_list_map_.end()) {
- net::CookieList* cookies = new net::CookieList();
+ net::CookieHashSet* cookies = new net::CookieHashSet;
origin_cookie_list_map_.insert(
- std::pair<GURL, net::CookieList*>(first_party_origin, cookies));
+ std::pair<GURL, net::CookieHashSet*>(first_party_origin, cookies));
return cookies;
}
return it->second;
@@ -244,8 +234,9 @@ void CannedBrowsingDataCookieHelper::AddCookie(
// counting cookies multiple times if they are stored in multiple cookie
// lists. B) Replace the GetCookieFor method call below with:
// "GetCookiesFor(frame_url.GetOrigin());"
- net::CookieList* cookie_list =
- GetCookiesFor(GURL(kGlobalCookieListURL));
+ if (origin_cookie_url_.is_empty())
+ origin_cookie_url_ = GURL(kGlobalCookieListURL);
+ net::CookieHashSet* cookie_list = GetCookiesFor(origin_cookie_url_);
Avi (use Gerrit) 2014/08/07 23:50:37 Or... static const GURL origin_cookie_url(kGlobal
erikchen 2014/08/08 00:35:27 Done.
DeleteMatchingCookie(cookie, cookie_list);
- cookie_list->push_back(cookie);
+ cookie_list->insert(cookie);
}

Powered by Google App Engine
This is Rietveld 408576698