| Index: chrome/browser/browsing_data/browsing_data_remover.cc
|
| diff --git a/chrome/browser/browsing_data/browsing_data_remover.cc b/chrome/browser/browsing_data/browsing_data_remover.cc
|
| index 4f41816acf8f53878debeae4744c75ea5201a23f..8586852fe9633cc4efdd70b5534120096b9f719d 100644
|
| --- a/chrome/browser/browsing_data/browsing_data_remover.cc
|
| +++ b/chrome/browser/browsing_data/browsing_data_remover.cc
|
| @@ -67,6 +67,7 @@
|
| #include "net/url_request/url_request_context.h"
|
| #include "net/url_request/url_request_context_getter.h"
|
| #include "storage/browser/quota/special_storage_policy.h"
|
| +#include "url/origin.h"
|
|
|
| #if defined(OS_ANDROID)
|
| #include "chrome/browser/precache/precache_manager_factory.h"
|
| @@ -232,7 +233,6 @@ BrowsingDataRemover::BrowsingDataRemover(Profile* profile,
|
| waiting_for_clear_webrtc_logs_(false),
|
| #endif
|
| remove_mask_(0),
|
| - remove_origin_(GURL()),
|
| origin_type_mask_(0),
|
| storage_partition_for_testing_(NULL) {
|
| DCHECK(profile);
|
| @@ -259,13 +259,13 @@ void BrowsingDataRemover::Remove(int remove_mask, int origin_type_mask) {
|
| }
|
|
|
| void BrowsingDataRemover::RemoveImpl(int remove_mask,
|
| - const GURL& origin,
|
| + const GURL& remove_url,
|
| int origin_type_mask) {
|
| DCHECK_CURRENTLY_ON(BrowserThread::UI);
|
| set_removing(true);
|
| remove_mask_ = remove_mask;
|
| - remove_origin_ = origin;
|
| origin_type_mask_ = origin_type_mask;
|
| + url::Origin remove_origin(remove_url);
|
|
|
| PrefService* prefs = profile_->GetPrefs();
|
| bool may_delete_history = prefs->GetBoolean(
|
| @@ -302,8 +302,8 @@ void BrowsingDataRemover::RemoveImpl(int remove_mask,
|
| profile_, ServiceAccessType::EXPLICIT_ACCESS);
|
| if (history_service) {
|
| std::set<GURL> restrict_urls;
|
| - if (!remove_origin_.is_empty())
|
| - restrict_urls.insert(remove_origin_);
|
| + if (!remove_url.is_empty())
|
| + restrict_urls.insert(remove_url);
|
| content::RecordAction(UserMetricsAction("ClearBrowsingData_History"));
|
| waiting_for_clear_history_ = true;
|
|
|
| @@ -367,7 +367,7 @@ void BrowsingDataRemover::RemoveImpl(int remove_mask,
|
| keywords_model->Load();
|
| waiting_for_clear_keyword_data_ = true;
|
| } else if (keywords_model) {
|
| - keywords_model->RemoveAutoGeneratedForOriginBetween(remove_origin_,
|
| + keywords_model->RemoveAutoGeneratedForOriginBetween(remove_url,
|
| delete_begin_, delete_end_);
|
| }
|
|
|
| @@ -385,7 +385,7 @@ void BrowsingDataRemover::RemoveImpl(int remove_mask,
|
|
|
| // If the caller is removing history for all hosts, then clear ancillary
|
| // historical information.
|
| - if (remove_origin_.is_empty()) {
|
| + if (remove_url.is_empty()) {
|
| // We also delete the list of recently closed tabs. Since these expire,
|
| // they can't be more than a day old, so we can simply clear them all.
|
| TabRestoreService* tab_service =
|
| @@ -468,7 +468,9 @@ void BrowsingDataRemover::RemoveImpl(int remove_mask,
|
| content::RecordAction(UserMetricsAction("ClearBrowsingData_Downloads"));
|
| content::DownloadManager* download_manager =
|
| BrowserContext::GetDownloadManager(profile_);
|
| - download_manager->RemoveDownloadsBetween(delete_begin_, delete_end_);
|
| + download_manager->RemoveDownloadsBetween(remove_origin,
|
| + delete_begin_,
|
| + delete_end_);
|
| DownloadPrefs* download_prefs = DownloadPrefs::FromDownloadManager(
|
| download_manager);
|
| download_prefs->SetSaveFilePath(download_prefs->DownloadPath());
|
| @@ -710,7 +712,7 @@ void BrowsingDataRemover::RemoveImpl(int remove_mask,
|
| storage_partition->ClearData(
|
| storage_partition_remove_mask,
|
| quota_storage_remove_mask,
|
| - remove_origin_,
|
| + remove_url,
|
| base::Bind(&DoesOriginMatchMask, origin_type_mask_),
|
| delete_begin_,
|
| delete_end_,
|
|
|