Index: components/precache/content/precache_manager.cc |
diff --git a/components/precache/content/precache_manager.cc b/components/precache/content/precache_manager.cc |
index 8e6e1a6d568d578c36a2e39f09664b809492d506..1e38ddf3c134ab0713570b7b7c409b8a064720c6 100644 |
--- a/components/precache/content/precache_manager.cc |
+++ b/components/precache/content/precache_manager.cc |
@@ -142,8 +142,7 @@ void PrecacheManager::OnGetUnfinishedWorkDone( |
base::Time::Now() - base::Time::FromInternalValue( |
unfinished_work->start_time()) > base::TimeDelta::FromHours(6)) { |
PrecacheFetcher::RecordCompletionStatistics( |
- *unfinished_work, |
- unfinished_work->manifest_size(), |
+ *unfinished_work, unfinished_work->top_host_size(), |
unfinished_work->resource_size()); |
unfinished_work.reset(new PrecacheUnfinishedWork()); |
unfinished_work->set_start_time(base::Time::Now().ToInternalValue()); |
@@ -251,12 +250,14 @@ void PrecacheManager::RecordStatsForFetch(const GURL& url, |
return; |
history_service_->HostRankIfAvailable( |
- referrer, base::Bind(&PrecacheManager::RecordStatsForFetchInternal, |
- AsWeakPtr(), url, latency, fetch_time, info, size)); |
+ referrer, |
+ base::Bind(&PrecacheManager::RecordStatsForFetchInternal, AsWeakPtr(), |
+ url, referrer.host(), latency, fetch_time, info, size)); |
} |
void PrecacheManager::RecordStatsForFetchInternal( |
const GURL& url, |
+ const std::string& referrer_host, |
const base::TimeDelta& latency, |
const base::Time& fetch_time, |
const net::HttpResponseInfo& info, |
@@ -271,8 +272,8 @@ void PrecacheManager::RecordStatsForFetchInternal( |
BrowserThread::PostTask( |
BrowserThread::DB, FROM_HERE, |
base::Bind(&PrecacheDatabase::RecordURLPrefetch, |
- base::Unretained(precache_database_.get()), url, latency, |
- fetch_time, info, size)); |
+ base::Unretained(precache_database_.get()), url, |
+ referrer_host, fetch_time, info.was_cached, size)); |
} else { |
bool is_connection_cellular = |
net::NetworkChangeNotifier::IsConnectionCellular( |
@@ -343,6 +344,9 @@ void PrecacheManager::InitializeAndStartFetcher() { |
std::move(unfinished_work_), |
metrics::HashName( |
base::FieldTrialList::FindFullName(kPrecacheFieldTrialName)), |
+ precache_database_->GetWeakPtr(), |
+ content::BrowserThread::GetTaskRunnerForThread( |
+ content::BrowserThread::DB), |
this)); |
precache_fetcher_->Start(); |
} |