| Index: chrome/browser/download/save_package.cc
|
| ===================================================================
|
| --- chrome/browser/download/save_package.cc (revision 23654)
|
| +++ chrome/browser/download/save_package.cc (working copy)
|
| @@ -437,7 +437,7 @@
|
| // If the save source is from file system, inform SaveFileManager to copy
|
| // corresponding file to the file path which this SaveItem specifies.
|
| if (info->save_source == SaveFileCreateInfo::SAVE_FILE_FROM_FILE) {
|
| - file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
|
| + file_manager_->file_loop()->PostTask(FROM_HERE,
|
| NewRunnableMethod(file_manager_,
|
| &SaveFileManager::SaveLocalFile,
|
| save_item->url(),
|
| @@ -543,7 +543,7 @@
|
| it != saved_failed_items_.end(); ++it)
|
| save_ids.push_back(it->second->save_id());
|
|
|
| - file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
|
| + file_manager_->file_loop()->PostTask(FROM_HERE,
|
| NewRunnableMethod(file_manager_,
|
| &SaveFileManager::RemoveSavedFileFromFileMap,
|
| save_ids));
|
| @@ -572,7 +572,7 @@
|
| final_names.push_back(std::make_pair(it->first,
|
| it->second->full_path()));
|
|
|
| - file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
|
| + file_manager_->file_loop()->PostTask(FROM_HERE,
|
| NewRunnableMethod(file_manager_,
|
| &SaveFileManager::RenameAllFiles,
|
| final_names,
|
| @@ -597,7 +597,7 @@
|
| it != saved_failed_items_.end(); ++it)
|
| save_ids.push_back(it->second->save_id());
|
|
|
| - file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
|
| + file_manager_->file_loop()->PostTask(FROM_HERE,
|
| NewRunnableMethod(file_manager_,
|
| &SaveFileManager::RemoveSavedFileFromFileMap,
|
| save_ids));
|
| @@ -693,7 +693,7 @@
|
| save_item->url(),
|
| this);
|
| if (save_item->save_id() != -1)
|
| - file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
|
| + file_manager_->file_loop()->PostTask(FROM_HERE,
|
| NewRunnableMethod(file_manager_,
|
| &SaveFileManager::CancelSave,
|
| save_item->save_id()));
|
| @@ -735,10 +735,16 @@
|
| void SavePackage::ShowDownloadInShell() {
|
| DCHECK(file_manager_);
|
| DCHECK(finished_ && !canceled() && !saved_main_file_path_.empty());
|
| - file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
|
| + DCHECK(MessageLoop::current() == file_manager_->ui_loop());
|
| +#if defined(OS_MACOSX)
|
| + // Mac OS X requires opening downloads on the UI thread.
|
| + platform_util::ShowItemInFolder(saved_main_file_path_);
|
| +#else
|
| + file_manager_->file_loop()->PostTask(FROM_HERE,
|
| NewRunnableMethod(file_manager_,
|
| &SaveFileManager::OnShowSavedFileInShell,
|
| saved_main_file_path_));
|
| +#endif
|
| }
|
|
|
| // Calculate the percentage of whole save page job.
|
| @@ -855,7 +861,7 @@
|
| if (flag == webkit_glue::DomSerializerDelegate::ALL_FRAMES_ARE_FINISHED) {
|
| for (SaveUrlItemMap::iterator it = in_progress_items_.begin();
|
| it != in_progress_items_.end(); ++it) {
|
| - file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
|
| + file_manager_->file_loop()->PostTask(FROM_HERE,
|
| NewRunnableMethod(file_manager_,
|
| &SaveFileManager::SaveFinished,
|
| it->second->save_id(),
|
| @@ -879,7 +885,7 @@
|
| memcpy(new_data->data(), data.data(), data.size());
|
|
|
| // Call write file functionality in file thread.
|
| - file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
|
| + file_manager_->file_loop()->PostTask(FROM_HERE,
|
| NewRunnableMethod(file_manager_,
|
| &SaveFileManager::UpdateSaveProgress,
|
| save_item->save_id(),
|
| @@ -889,7 +895,7 @@
|
|
|
| // Current frame is completed saving, call finish in file thread.
|
| if (flag == webkit_glue::DomSerializerDelegate::CURRENT_FRAME_IS_FINISHED) {
|
| - file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
|
| + file_manager_->file_loop()->PostTask(FROM_HERE,
|
| NewRunnableMethod(file_manager_,
|
| &SaveFileManager::SaveFinished,
|
| save_item->save_id(),
|
|
|