| Index: chrome/browser/browsing_data_remover.cc
|
| ===================================================================
|
| --- chrome/browser/browsing_data_remover.cc (revision 96041)
|
| +++ chrome/browser/browsing_data_remover.cc (working copy)
|
| @@ -7,7 +7,6 @@
|
| #include <map>
|
| #include <set>
|
|
|
| -#include "base/bind.h"
|
| #include "base/callback.h"
|
| #include "base/file_util.h"
|
| #include "base/logging.h"
|
| @@ -72,7 +71,6 @@
|
| waiting_for_clear_history_(false),
|
| waiting_for_clear_quota_managed_data_(false),
|
| waiting_for_clear_networking_history_(false),
|
| - waiting_for_clear_cookies_(false),
|
| waiting_for_clear_cache_(false),
|
| waiting_for_clear_lso_data_(false) {
|
| DCHECK(profile);
|
| @@ -95,7 +93,6 @@
|
| waiting_for_clear_history_(false),
|
| waiting_for_clear_quota_managed_data_(false),
|
| waiting_for_clear_networking_history_(false),
|
| - waiting_for_clear_cookies_(false),
|
| waiting_for_clear_cache_(false),
|
| waiting_for_clear_lso_data_(false) {
|
| DCHECK(profile);
|
| @@ -107,7 +104,6 @@
|
|
|
| void BrowsingDataRemover::Remove(int remove_mask) {
|
| DCHECK(!removing_);
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| removing_ = true;
|
|
|
| if (remove_mask & REMOVE_HISTORY) {
|
| @@ -183,14 +179,14 @@
|
| if (remove_mask & REMOVE_COOKIES) {
|
| UserMetrics::RecordAction(UserMetricsAction("ClearBrowsingData_Cookies"));
|
| // Since we are running on the UI thread don't call GetURLRequestContext().
|
| + net::CookieMonster* cookie_monster = NULL;
|
| net::URLRequestContextGetter* rq_context = profile_->GetRequestContext();
|
| if (rq_context) {
|
| - waiting_for_clear_cookies_ = true;
|
| - BrowserThread::PostTask(
|
| - BrowserThread::IO, FROM_HERE,
|
| - base::Bind(&BrowsingDataRemover::ClearCookiesOnIOThread,
|
| - base::Unretained(this), base::Unretained(rq_context)));
|
| + cookie_monster = rq_context->DONTUSEME_GetCookieStore()->
|
| + GetCookieMonster();
|
| }
|
| + if (cookie_monster)
|
| + cookie_monster->DeleteAllCreatedBetween(delete_begin_, delete_end_, true);
|
|
|
| // REMOVE_COOKIES is actually "cookies and other site data" so we make sure
|
| // to remove other data such local databases, STS state, etc. These only can
|
| @@ -536,31 +532,3 @@
|
| waiting_for_clear_lso_data_ = false;
|
| NotifyAndDeleteIfDone();
|
| }
|
| -
|
| -void BrowsingDataRemover::OnClearedCookies(int num_deleted) {
|
| - if (!BrowserThread::CurrentlyOn(BrowserThread::UI)) {
|
| - BrowserThread::PostTask(
|
| - BrowserThread::UI, FROM_HERE,
|
| - base::Bind(&BrowsingDataRemover::OnClearedCookies,
|
| - base::Unretained(this), num_deleted));
|
| - return;
|
| - }
|
| -
|
| - waiting_for_clear_cookies_ = false;
|
| - NotifyAndDeleteIfDone();
|
| -}
|
| -
|
| -void BrowsingDataRemover::ClearCookiesOnIOThread(
|
| - net::URLRequestContextGetter* rq_context) {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
|
| - net::CookieMonster* cookie_monster = rq_context->
|
| - GetURLRequestContext()->cookie_store()->GetCookieMonster();
|
| - if (cookie_monster) {
|
| - cookie_monster->DeleteAllCreatedBetweenAsync(
|
| - delete_begin_, delete_end_, true,
|
| - base::Bind(&BrowsingDataRemover::OnClearedCookies,
|
| - base::Unretained(this)));
|
| - } else {
|
| - OnClearedCookies(0);
|
| - }
|
| -}
|
|
|