| Index: chrome/browser/browsing_data_remover.cc
|
| diff --git a/chrome/browser/browsing_data_remover.cc b/chrome/browser/browsing_data_remover.cc
|
| index 08bebbc39eae3b2e3d1c4d81ddd53bef13efd3f2..fadef49abd2dbca131f799a2004261f75af4728a 100644
|
| --- a/chrome/browser/browsing_data_remover.cc
|
| +++ b/chrome/browser/browsing_data_remover.cc
|
| @@ -129,14 +129,13 @@ BrowsingDataRemover::BrowsingDataRemover(Profile* profile,
|
| }
|
|
|
| BrowsingDataRemover::BrowsingDataRemover(Profile* profile,
|
| - TimePeriod time_period,
|
| - base::Time delete_end)
|
| + TimePeriod time_period)
|
| : profile_(profile),
|
| quota_manager_(NULL),
|
| dom_storage_context_(NULL),
|
| special_storage_policy_(profile->GetExtensionSpecialStoragePolicy()),
|
| delete_begin_(CalculateBeginDeleteTime(time_period)),
|
| - delete_end_(delete_end),
|
| + delete_end_(CalculateEndDeleteTime(time_period)),
|
| next_cache_state_(STATE_NONE),
|
| cache_(NULL),
|
| main_context_getter_(profile->GetRequestContext()),
|
| @@ -485,20 +484,26 @@ void BrowsingDataRemover::OverrideQuotaManagerForTesting(
|
|
|
| base::Time BrowsingDataRemover::CalculateBeginDeleteTime(
|
| TimePeriod time_period) {
|
| - base::TimeDelta diff;
|
| - base::Time delete_begin_time = base::Time::Now();
|
| + const base::Time now = base::Time::Now();
|
| + base::Time delete_begin_time;
|
| switch (time_period) {
|
| case LAST_HOUR:
|
| - diff = base::TimeDelta::FromHours(1);
|
| + delete_begin_time = now - base::TimeDelta::FromHours(1);
|
| break;
|
| case LAST_DAY:
|
| - diff = base::TimeDelta::FromHours(24);
|
| + delete_begin_time = now - base::TimeDelta::FromDays(1);
|
| break;
|
| case LAST_WEEK:
|
| - diff = base::TimeDelta::FromHours(7*24);
|
| + delete_begin_time = now - base::TimeDelta::FromDays(7);
|
| break;
|
| case FOUR_WEEKS:
|
| - diff = base::TimeDelta::FromHours(4*7*24);
|
| + delete_begin_time = now - base::TimeDelta::FromDays(7 * 4);
|
| + break;
|
| + case EXCEPT_LAST_HOUR:
|
| + case EXCEPT_LAST_DAY:
|
| + case EXCEPT_LAST_WEEK:
|
| + case EXCEPT_FOUR_WEEKS:
|
| + delete_begin_time = base::Time();
|
| break;
|
| case EVERYTHING:
|
| delete_begin_time = base::Time();
|
| @@ -507,7 +512,40 @@ base::Time BrowsingDataRemover::CalculateBeginDeleteTime(
|
| NOTREACHED() << L"Missing item";
|
| break;
|
| }
|
| - return delete_begin_time - diff;
|
| + return delete_begin_time;
|
| +}
|
| +
|
| +base::Time BrowsingDataRemover::CalculateEndDeleteTime(
|
| + TimePeriod time_period) {
|
| + const base::Time now = base::Time::Now();
|
| + base::Time delete_end_time;
|
| + switch (time_period) {
|
| + case LAST_HOUR:
|
| + case LAST_DAY:
|
| + case LAST_WEEK:
|
| + case FOUR_WEEKS:
|
| + delete_end_time = base::Time();
|
| + break;
|
| + case EXCEPT_LAST_HOUR:
|
| + delete_end_time = now - base::TimeDelta::FromHours(1);
|
| + break;
|
| + case EXCEPT_LAST_DAY:
|
| + delete_end_time = now - base::TimeDelta::FromDays(1);
|
| + break;
|
| + case EXCEPT_LAST_WEEK:
|
| + delete_end_time = now - base::TimeDelta::FromDays(7);
|
| + break;
|
| + case EXCEPT_FOUR_WEEKS:
|
| + delete_end_time = now - base::TimeDelta::FromDays(7 * 4);
|
| + break;
|
| + case EVERYTHING:
|
| + delete_end_time = base::Time();
|
| + break;
|
| + default:
|
| + NOTREACHED() << L"Missing item";
|
| + break;
|
| + }
|
| + return delete_end_time;
|
| }
|
|
|
| bool BrowsingDataRemover::AllDone() {
|
|
|