| Index: chrome/browser/safe_browsing/safe_browsing_service.cc
|
| diff --git a/chrome/browser/safe_browsing/safe_browsing_service.cc b/chrome/browser/safe_browsing/safe_browsing_service.cc
|
| index 53df55a93029bdb9fb57a37f9c17a49570769d40..9192b4dd13d04726c11d702db8c027fae09bcb45 100644
|
| --- a/chrome/browser/safe_browsing/safe_browsing_service.cc
|
| +++ b/chrome/browser/safe_browsing/safe_browsing_service.cc
|
| @@ -863,7 +863,14 @@ void SafeBrowsingService::OnCheckDone(SafeBrowsingCheck* check) {
|
| // Reset the start time so that we can measure the network time without the
|
| // database time.
|
| check->start = base::TimeTicks::Now();
|
| - protocol_manager_->GetFullHash(check, check->prefix_hits);
|
| + // Note: If |this| is deleted or stopped, the protocol_manager will
|
| + // be destroyed as well - hence it's OK to do unretained in this case.
|
| + protocol_manager_->GetFullHash(
|
| + check->prefix_hits,
|
| + base::Bind(&SafeBrowsingService::HandleGetHashResults,
|
| + base::Unretained(this),
|
| + check),
|
| + check->is_download);
|
| } else {
|
| // We may have cached results for previous GetHash queries. Since
|
| // this data comes from cache, don't histogram hits.
|
|
|