Index: content/browser/loader/upload_data_stream_builder.cc |
diff --git a/content/browser/loader/upload_data_stream_builder.cc b/content/browser/loader/upload_data_stream_builder.cc |
index a79299c0dfd73d85f9328e7d1c7a912a401c2b82..7f6b517b393aa6f9e49423e01e304bb695b8d722 100644 |
--- a/content/browser/loader/upload_data_stream_builder.cc |
+++ b/content/browser/loader/upload_data_stream_builder.cc |
@@ -77,27 +77,25 @@ scoped_ptr<net::UploadDataStream> UploadDataStreamBuilder::Build( |
storage::BlobStorageContext* blob_context, |
storage::FileSystemContext* file_system_context, |
base::SingleThreadTaskRunner* file_task_runner) { |
- ScopedVector<net::UploadElementReader> element_readers; |
+ std::vector<scoped_ptr<net::UploadElementReader>> element_readers; |
for (const auto& element : *body->elements()) { |
switch (element.type()) { |
case ResourceRequestBody::Element::TYPE_BYTES: |
- element_readers.push_back(new BytesElementReader(body, element)); |
+ element_readers.push_back( |
+ make_scoped_ptr(new BytesElementReader(body, element))); |
break; |
case ResourceRequestBody::Element::TYPE_FILE: |
- element_readers.push_back( |
- new FileElementReader(body, file_task_runner, element)); |
+ element_readers.push_back(make_scoped_ptr( |
+ new FileElementReader(body, file_task_runner, element))); |
break; |
case ResourceRequestBody::Element::TYPE_FILE_FILESYSTEM: |
// If |body| contains any filesystem URLs, the caller should have |
// supplied a FileSystemContext. |
DCHECK(file_system_context); |
element_readers.push_back( |
- new content::UploadFileSystemFileElementReader( |
- file_system_context, |
- element.filesystem_url(), |
- element.offset(), |
- element.length(), |
- element.expected_modification_time())); |
+ make_scoped_ptr(new content::UploadFileSystemFileElementReader( |
+ file_system_context, element.filesystem_url(), element.offset(), |
+ element.length(), element.expected_modification_time()))); |
break; |
case ResourceRequestBody::Element::TYPE_BLOB: { |
DCHECK_EQ(std::numeric_limits<uint64_t>::max(), element.length()); |
@@ -105,9 +103,10 @@ scoped_ptr<net::UploadDataStream> UploadDataStreamBuilder::Build( |
scoped_ptr<storage::BlobDataHandle> handle = |
blob_context->GetBlobDataFromUUID(element.blob_uuid()); |
storage::BlobDataHandle* handle_ptr = handle.get(); |
- element_readers.push_back(new storage::UploadBlobElementReader( |
- handle_ptr->CreateReader(file_system_context, file_task_runner), |
- handle.Pass())); |
+ element_readers.push_back( |
+ make_scoped_ptr(new storage::UploadBlobElementReader( |
+ handle_ptr->CreateReader(file_system_context, file_task_runner), |
+ std::move(handle)))); |
break; |
} |
case ResourceRequestBody::Element::TYPE_DISK_CACHE_ENTRY: |
@@ -118,9 +117,8 @@ scoped_ptr<net::UploadDataStream> UploadDataStreamBuilder::Build( |
} |
} |
- return make_scoped_ptr( |
- new net::ElementsUploadDataStream(element_readers.Pass(), |
- body->identifier())); |
+ return make_scoped_ptr(new net::ElementsUploadDataStream( |
+ std::move(element_readers), body->identifier())); |
} |
} // namespace content |