Index: content/browser/download/download_file_factory.cc |
diff --git a/content/browser/download/download_file_factory.cc b/content/browser/download/download_file_factory.cc |
index 819137f44f7a54c3a070b73049e4d89d6a64ddb7..74683026506df04ac8f7679c033b347447e9ee25 100644 |
--- a/content/browser/download/download_file_factory.cc |
+++ b/content/browser/download/download_file_factory.cc |
@@ -12,14 +12,18 @@ namespace content { |
DownloadFileFactory::~DownloadFileFactory() {} |
DownloadFile* DownloadFileFactory::CreateFile( |
- DownloadCreateInfo* info, |
+ scoped_ptr<DownloadCreateInfo> info, |
scoped_ptr<content::ByteStreamReader> stream, |
DownloadManager* download_manager, |
bool calculate_hash, |
const net::BoundNetLog& bound_net_log) { |
+ // Ownership will be taken by DownloadFileImpl. |
+ scoped_ptr<DownloadRequestHandleInterface> request_handle( |
+ new DownloadRequestHandle(info->request_handle)); |
+ |
return new DownloadFileImpl( |
- info, stream.Pass(), new DownloadRequestHandle(info->request_handle), |
- download_manager, calculate_hash, |
+ info.Pass(), stream.Pass(), request_handle.Pass(), download_manager, |
+ calculate_hash, |
scoped_ptr<content::PowerSaveBlocker>( |
new content::PowerSaveBlocker( |
content::PowerSaveBlocker::kPowerSaveBlockPreventAppSuspension, |