Index: content/browser/download/drag_download_file.cc |
diff --git a/content/browser/download/drag_download_file.cc b/content/browser/download/drag_download_file.cc |
index 2d76e6fb6d517a797c188758ecc507b877e37255..e66b2016a2471ad7a00fb08f0292005135dbc074 100644 |
--- a/content/browser/download/drag_download_file.cc |
+++ b/content/browser/download/drag_download_file.cc |
@@ -183,11 +183,14 @@ void DragDownloadFile::ModelChanged(DownloadManager* manager) { |
return; |
std::vector<DownloadItem*> downloads; |
- download_manager_->GetTemporaryDownloads(file_path_.DirName(), &downloads); |
+ download_manager_->GetAllDownloads(&downloads); |
for (std::vector<DownloadItem*>::const_iterator i = downloads.begin(); |
i != downloads.end(); ++i) { |
- if ((*i)->GetOriginalUrl() == url_) { |
- download_item_ = *i; |
+ DownloadItem* item = *i; |
+ if (item->IsTemporary() && |
+ item->GetOriginalUrl() == url_ && |
+ file_path_.DirName() == item->GetTargetFilePath().DirName()) { |
+ download_item_ = item; |
download_item_->AddObserver(this); |
break; |
} |