diff options
Diffstat (limited to 'chrome/browser/download/save_package.cc')
-rw-r--r-- | chrome/browser/download/save_package.cc | 33 |
1 files changed, 22 insertions, 11 deletions
diff --git a/chrome/browser/download/save_package.cc b/chrome/browser/download/save_package.cc index 20cb15b..15e4787 100644 --- a/chrome/browser/download/save_package.cc +++ b/chrome/browser/download/save_package.cc @@ -14,6 +14,7 @@ #include "base/task.h" #include "base/thread.h" #include "chrome/browser/browser_process.h" +#include "chrome/browser/chrome_thread.h" #include "chrome/browser/download/download_item_model.h" #include "chrome/browser/download/download_manager.h" #include "chrome/browser/download/download_shelf.h" @@ -478,7 +479,8 @@ void SavePackage::StartSave(const SaveFileCreateInfo* info) { // 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_->file_loop()->PostTask(FROM_HERE, + ChromeThread::PostTask( + ChromeThread::FILE, FROM_HERE, NewRunnableMethod(file_manager_, &SaveFileManager::SaveLocalFile, save_item->url(), @@ -584,7 +586,8 @@ void SavePackage::Stop() { it != saved_failed_items_.end(); ++it) save_ids.push_back(it->second->save_id()); - file_manager_->file_loop()->PostTask(FROM_HERE, + ChromeThread::PostTask( + ChromeThread::FILE, FROM_HERE, NewRunnableMethod(file_manager_, &SaveFileManager::RemoveSavedFileFromFileMap, save_ids)); @@ -613,7 +616,8 @@ void SavePackage::CheckFinish() { final_names.push_back(std::make_pair(it->first, it->second->full_path())); - file_manager_->file_loop()->PostTask(FROM_HERE, + ChromeThread::PostTask( + ChromeThread::FILE, FROM_HERE, NewRunnableMethod(file_manager_, &SaveFileManager::RenameAllFiles, final_names, @@ -638,7 +642,8 @@ void SavePackage::Finish() { it != saved_failed_items_.end(); ++it) save_ids.push_back(it->second->save_id()); - file_manager_->file_loop()->PostTask(FROM_HERE, + ChromeThread::PostTask( + ChromeThread::FILE, FROM_HERE, NewRunnableMethod(file_manager_, &SaveFileManager::RemoveSavedFileFromFileMap, save_ids)); @@ -734,7 +739,8 @@ void SavePackage::SaveCanceled(SaveItem* save_item) { save_item->url(), this); if (save_item->save_id() != -1) - file_manager_->file_loop()->PostTask(FROM_HERE, + ChromeThread::PostTask( + ChromeThread::FILE, FROM_HERE, NewRunnableMethod(file_manager_, &SaveFileManager::CancelSave, save_item->save_id())); @@ -776,12 +782,13 @@ void SavePackage::SaveNextFile(bool process_all_remaining_items) { void SavePackage::ShowDownloadInShell() { DCHECK(file_manager_); DCHECK(finished_ && !canceled() && !saved_main_file_path_.empty()); - DCHECK(MessageLoop::current() == file_manager_->ui_loop()); + DCHECK(ChromeThread::CurrentlyOn(ChromeThread::UI)); #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, + ChromeThread::PostTask( + ChromeThread::FILE, FROM_HERE, NewRunnableMethod(file_manager_, &SaveFileManager::OnShowSavedFileInShell, saved_main_file_path_)); @@ -902,7 +909,8 @@ void SavePackage::OnReceivedSerializedHtmlData(const GURL& frame_url, 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_->file_loop()->PostTask(FROM_HERE, + ChromeThread::PostTask( + ChromeThread::FILE, FROM_HERE, NewRunnableMethod(file_manager_, &SaveFileManager::SaveFinished, it->second->save_id(), @@ -926,7 +934,8 @@ void SavePackage::OnReceivedSerializedHtmlData(const GURL& frame_url, memcpy(new_data->data(), data.data(), data.size()); // Call write file functionality in file thread. - file_manager_->file_loop()->PostTask(FROM_HERE, + ChromeThread::PostTask( + ChromeThread::FILE, FROM_HERE, NewRunnableMethod(file_manager_, &SaveFileManager::UpdateSaveProgress, save_item->save_id(), @@ -936,7 +945,8 @@ void SavePackage::OnReceivedSerializedHtmlData(const GURL& frame_url, // Current frame is completed saving, call finish in file thread. if (flag == webkit_glue::DomSerializerDelegate::CURRENT_FRAME_IS_FINISHED) { - file_manager_->file_loop()->PostTask(FROM_HERE, + ChromeThread::PostTask( + ChromeThread::FILE, FROM_HERE, NewRunnableMethod(file_manager_, &SaveFileManager::SaveFinished, save_item->save_id(), @@ -1081,7 +1091,8 @@ void SavePackage::GetSaveInfo() { FilePath save_dir = GetSaveDirPreference(tab_contents_->profile()->GetPrefs()); - file_manager_->file_loop()->PostTask(FROM_HERE, + ChromeThread::PostTask( + ChromeThread::FILE, FROM_HERE, new CreateDownloadDirectoryTask(save_dir, method_factory_.NewRunnableMethod( &SavePackage::ContinueGetSaveInfo, save_dir), |