Index: chrome/browser/plugins/plugin_installer.cc |
diff --git a/chrome/browser/plugins/plugin_installer.cc b/chrome/browser/plugins/plugin_installer.cc |
index 2b2ea7e87546380ba9ee5c5d4cecc13e5829b940..6f4e32f5e62b5d39a36269b2fdf4da18552c98a2 100644 |
--- a/chrome/browser/plugins/plugin_installer.cc |
+++ b/chrome/browser/plugins/plugin_installer.cc |
@@ -60,7 +60,7 @@ void BeginDownload( |
if (error != net::OK) { |
BrowserThread::PostTask( |
BrowserThread::UI, FROM_HERE, |
- base::Bind(callback, content::DownloadId::Invalid(), error)); |
+ base::Bind(callback, static_cast<DownloadItem*>(NULL), error)); |
} |
} |
@@ -153,23 +153,18 @@ void PluginInstaller::StartInstalling(const GURL& plugin_url, |
void PluginInstaller::DownloadStarted( |
scoped_refptr<content::DownloadManager> dlm, |
- content::DownloadId download_id, |
+ content::DownloadItem* item, |
net::Error error) { |
- if (error != net::OK) { |
+ if (!item) { |
+ DCHECK_NE(net::OK, error); |
std::string msg = |
base::StringPrintf("Error %d: %s", error, net::ErrorToString(error)); |
DownloadError(msg); |
return; |
} |
- DownloadItem* download_item = dlm->GetDownload(download_id.local()); |
- // TODO(benjhayden): DCHECK(item && item->IsInProgress()) after figuring out |
- // why DownloadStarted may get net:OK but an invalid id. |
- if (!download_item) { |
- DownloadError("Download not found"); |
- return; |
- } |
- download_item->SetOpenWhenComplete(true); |
- download_item->AddObserver(this); |
+ DCHECK_EQ(net::OK, error); |
+ item->SetOpenWhenComplete(true); |
+ item->AddObserver(this); |
} |
void PluginInstaller::OpenDownloadURL(const GURL& plugin_url, |