Index: chrome/browser/ui/webui/downloads_dom_handler.cc |
=================================================================== |
--- chrome/browser/ui/webui/downloads_dom_handler.cc (revision 150095) |
+++ chrome/browser/ui/webui/downloads_dom_handler.cc (working copy) |
@@ -179,6 +179,14 @@ |
if (it == download_items_.end()) |
return; |
+ if (download->GetState() == content::DownloadItem::REMOVING) { |
+ (*it)->RemoveObserver(this); |
+ *it = NULL; |
+ // A later ModelChanged() notification will change the WebUI's |
+ // view of the downloads list. |
+ return; |
+ } |
+ |
const int id = static_cast<int>(it - download_items_.begin()); |
ListValue results_value; |
@@ -186,17 +194,6 @@ |
web_ui()->CallJavascriptFunction("downloadUpdated", results_value); |
} |
-void DownloadsDOMHandler::OnDownloadDestroyed( |
- content::DownloadItem* download) { |
- download->RemoveObserver(this); |
- OrderedDownloads::iterator it = std::find(download_items_.begin(), |
- download_items_.end(), |
- download); |
- *it = NULL; |
- // A later ModelChanged() notification will change the WebUI's |
- // view of the downloads list. |
-} |
- |
// A download has started or been deleted. Query our DownloadManager for the |
// current set of downloads. |
void DownloadsDOMHandler::ModelChanged(content::DownloadManager* manager) { |