| Index: chrome/browser/download/download_danger_prompt.cc
|
| diff --git a/chrome/browser/download/download_danger_prompt.cc b/chrome/browser/download/download_danger_prompt.cc
|
| index f5b2e8f4b4293a1e97bcbbe635e208337165ac37..3291e230699dd621af320a3a2d4701baf608e51d 100644
|
| --- a/chrome/browser/download/download_danger_prompt.cc
|
| +++ b/chrome/browser/download/download_danger_prompt.cc
|
| @@ -258,10 +258,12 @@ void DownloadDangerPromptImpl::RunDone(Action action) {
|
| done_.Reset();
|
| if (download_ != NULL) {
|
| const bool accept = action == DownloadDangerPrompt::ACCEPT;
|
| - RecordDownloadDangerPrompt(accept, *download_);
|
| - if (!download_->GetURL().is_empty() &&
|
| - !download_->GetBrowserContext()->IsOffTheRecord()) {
|
| - SendSafeBrowsingDownloadRecoveryReport(accept, *download_);
|
| + if (download_->IsDangerous() && !download_->IsDone()) {
|
| + RecordDownloadDangerPrompt(accept, *download_);
|
| + if (!download_->GetURL().is_empty() &&
|
| + !download_->GetBrowserContext()->IsOffTheRecord()) {
|
| + SendSafeBrowsingDownloadRecoveryReport(accept, *download_);
|
| + }
|
| }
|
| download_->RemoveObserver(this);
|
| download_ = NULL;
|
| @@ -334,8 +336,8 @@ void DownloadDangerPrompt::SendSafeBrowsingDownloadRecoveryReport(
|
| case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_HOST:
|
| report.set_download_verdict(ClientDownloadResponse::DANGEROUS_HOST);
|
| break;
|
| - default:
|
| - break;
|
| + default: // Don't send report for any other danger types.
|
| + return;
|
| }
|
| report.set_url(download.GetURL().spec());
|
| report.set_did_proceed(did_proceed);
|
|
|