Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(481)

Unified Diff: content/browser/loader/upload_data_stream_builder.cc

Issue 1476443002: Remove ScopedVector from ElementsUploadDataStream (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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
« no previous file with comments | « content/browser/download/download_manager_impl.cc ('k') | content/browser/loader/upload_data_stream_builder_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698