| Index: chrome/browser/download/save_package.cc
|
| diff --git a/chrome/browser/download/save_package.cc b/chrome/browser/download/save_package.cc
|
| index 9fccd6e7684f677307527f1059fbb5fb118b6d65..f624e4458705160a76a50adb498b22cd35a5f1f1 100644
|
| --- a/chrome/browser/download/save_package.cc
|
| +++ b/chrome/browser/download/save_package.cc
|
| @@ -370,9 +370,17 @@ bool SavePackage::Init() {
|
| request_context_getter_ = profile->GetRequestContext();
|
|
|
| // Create the fake DownloadItem and display the view.
|
| - download_ = new DownloadItem(tab_contents_->profile()->GetDownloadManager(),
|
| - saved_main_file_path_, page_url_,
|
| + DownloadManager* download_manager =
|
| + tab_contents_->profile()->GetDownloadManager();
|
| + download_ = new DownloadItem(download_manager,
|
| + saved_main_file_path_,
|
| + page_url_,
|
| profile->IsOffTheRecord());
|
| +
|
| + // Transfer the ownership to the download manager. We need the DownloadItem
|
| + // to be alive as long as the Profile is alive.
|
| + download_manager->SavePageAsDownloadStarted(download_);
|
| +
|
| tab_contents_->OnStartDownload(download_);
|
|
|
| // Check save type and process the save page job.
|
|
|