From 44080e71f9994cfa0c52c470196e7993a4cb9482 Mon Sep 17 00:00:00 2001 From: "ajwong@chromium.org" Date: Tue, 27 Aug 2013 05:56:17 +0000 Subject: Remove the Extensions URLRequestContext. Though chrome-extension: scheme URLs support cookies, they do not share a namespace with http: and https:. In particular, chrome-extension://a and http://a should not have the same set of cookies. To enforce this, previously the code created a completely separate URLRequestContext for servicing chrome-extension: schemes. However, the code really only used this object as a method for conveying the correct cookie jar from Profile creation to a few spots where cookies were accessed; the rest of the URLRequestContext functionality was unused. This CL removes the Extensions URLRequestContext code and replaces it with APIs that directly expose the needed net::CookieStore. Lastly, CookieMonster::EnableFileScheme() is removed and CookieMonster::Delegate is renamed CookieMonsterDelegate. EnableFileScheme is an inherently racy API because CookieMonsters are creatable on all threads and this function sets an unprotected global flag. CookieMonsterDelegate is preferable to the nested interface because it can now be forward declared. TBRing darin and sky to cover the rest of the mechanical unittest changes. TBR=darin,sky BUG=158386,159193,57884 Review URL: https://chromiumcodereview.appspot.com/12546016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219709 0039d316-1c4b-4281-b951-d872f2087c98 --- .../browsing_data/browsing_data_remover_unittest.cc | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'chrome/browser/browsing_data/browsing_data_remover_unittest.cc') diff --git a/chrome/browser/browsing_data/browsing_data_remover_unittest.cc b/chrome/browser/browsing_data/browsing_data_remover_unittest.cc index 3de958d..7ec7e48 100644 --- a/chrome/browser/browsing_data/browsing_data_remover_unittest.cc +++ b/chrome/browser/browsing_data/browsing_data_remover_unittest.cc @@ -31,12 +31,15 @@ #include "components/autofill/core/browser/credit_card.h" #include "components/autofill/core/browser/personal_data_manager.h" #include "components/autofill/core/browser/personal_data_manager_observer.h" +#include "content/public/browser/browser_context.h" +#include "content/public/browser/cookie_store_factory.h" #include "content/public/browser/dom_storage_context.h" #include "content/public/browser/local_storage_usage_info.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/storage_partition.h" -#include "content/public/test/test_browser_thread.h" +#include "content/public/common/url_constants.h" #include "content/public/test/test_browser_thread_bundle.h" +#include "content/public/test/test_utils.h" #include "net/cookies/cookie_monster.h" #include "net/ssl/server_bound_cert_service.h" #include "net/ssl/server_bound_cert_store.h" @@ -223,8 +226,9 @@ class RemoveCookieTester { class RemoveProfileCookieTester : public RemoveCookieTester { public: explicit RemoveProfileCookieTester(TestingProfile* profile) { - SetMonster(profile->GetRequestContext()->GetURLRequestContext()-> - cookie_store()->GetCookieMonster()); + SetMonster( + content::BrowserContext::GetDefaultStoragePartition(profile)-> + GetCookieStoreForScheme(chrome::kHttpScheme)->GetCookieMonster()); } }; @@ -241,7 +245,9 @@ class RemoveSafeBrowsingCookieTester : public RemoveCookieTester { // Create a cookiemonster that does not have persistant storage, and replace // the SafeBrowsingService created one with it. - net::CookieStore* monster = new net::CookieMonster(NULL, NULL); + net::CookieStore* monster = + content::CreateCookieStore(content::CookieStoreConfig())-> + GetCookieMonster(); sb_service->url_request_context()->GetURLRequestContext()-> set_cookie_store(monster); SetMonster(monster); -- cgit v1.1