| Index: chrome/browser/browsing_data/history_counter.cc | 
| diff --git a/chrome/browser/browsing_data/history_counter.cc b/chrome/browser/browsing_data/history_counter.cc | 
| index ae1fbe1d3d8cfbfa7406f251686be8f17d4c3fda..116dba92b11181f748886936d75d4c6615245660 100644 | 
| --- a/chrome/browser/browsing_data/history_counter.cc | 
| +++ b/chrome/browser/browsing_data/history_counter.cc | 
| @@ -28,18 +28,6 @@ HistoryCounter::HistoryCounter() : pref_name_(prefs::kDeleteBrowsingHistory), | 
| HistoryCounter::~HistoryCounter() { | 
| } | 
|  | 
| -// Note that the local counting done by |VisitDatabase::GetHistoryCount| | 
| -// returns an int, which is at most a signed 64-bit number. On the other hand, | 
| -// ResultInt is an unsigned 64-bit number, so the range 2^63..2^64-1 is unused | 
| -// and we can use it to encode special values. | 
| -// static | 
| -const BrowsingDataCounter::ResultInt HistoryCounter::kOnlySyncedHistory = | 
| -    std::numeric_limits<BrowsingDataCounter::ResultInt>::max(); | 
| -COMPILE_ASSERT( | 
| -    std::numeric_limits<int>::digits < | 
| -        std::numeric_limits<BrowsingDataCounter::ResultInt>::digits, | 
| -    "BrowsingDataCounter::ResultInt must be wider than int."); | 
| - | 
| const std::string& HistoryCounter::GetPrefName() const { | 
| return pref_name_; | 
| } | 
| @@ -161,8 +149,17 @@ void HistoryCounter::MergeResults() { | 
| if (!local_counting_finished_ || !web_counting_finished_) | 
| return; | 
|  | 
| -  if (!local_result_ && has_synced_visits_) | 
| -    ReportResult(kOnlySyncedHistory); | 
| -  else | 
| -    ReportResult(local_result_); | 
| +  ReportResult(make_scoped_ptr(new HistoryResult( | 
| +      this, local_result_, has_synced_visits_))); | 
| +} | 
| + | 
| +HistoryCounter::HistoryResult::HistoryResult( | 
| +    const HistoryCounter* source, | 
| +    ResultInt value, | 
| +    bool has_synced_visits) | 
| +    : FinishedResult(source, value), | 
| +      has_synced_visits_(has_synced_visits) { | 
| +} | 
| + | 
| +HistoryCounter::HistoryResult::~HistoryResult() { | 
| } | 
|  |