| Index: chrome/browser/data_use_measurement/chrome_data_use_ascriber_service.cc
|
| diff --git a/chrome/browser/data_use_measurement/chrome_data_use_ascriber_service.cc b/chrome/browser/data_use_measurement/chrome_data_use_ascriber_service.cc
|
| index 24e83c0f10ae84b3e7756f7298d5e4cde4dd5d4b..790734f2f2c7e753bafad9cc2baf65fbdfacc449 100644
|
| --- a/chrome/browser/data_use_measurement/chrome_data_use_ascriber_service.cc
|
| +++ b/chrome/browser/data_use_measurement/chrome_data_use_ascriber_service.cc
|
| @@ -163,6 +163,27 @@ void ChromeDataUseAscriberService::ReadyToCommitNavigation(
|
| navigation_handle));
|
| }
|
|
|
| +void ChromeDataUseAscriberService::DidFinishNavigation(
|
| + content::NavigationHandle* navigation_handle) {
|
| + DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
|
| +
|
| + if (!navigation_handle->IsInMainFrame() ||
|
| + !navigation_handle->HasCommitted() || navigation_handle->IsSamePage())
|
| + return;
|
| +
|
| + if (!ascriber_)
|
| + return;
|
| +
|
| + content::WebContents* web_contents = navigation_handle->GetWebContents();
|
| + content::BrowserThread::PostTask(
|
| + content::BrowserThread::IO, FROM_HERE,
|
| + base::Bind(&ChromeDataUseAscriber::DidFinishNavigation,
|
| + base::Unretained(ascriber_),
|
| + web_contents->GetRenderProcessHost()->GetID(),
|
| + web_contents->GetMainFrame()->GetRoutingID(),
|
| + navigation_handle->GetPageTransition()));
|
| +}
|
| +
|
| void ChromeDataUseAscriberService::SetDataUseAscriber(
|
| ChromeDataUseAscriber* ascriber) {
|
| DCHECK(!is_initialized_);
|
|
|