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

Unified Diff: components/browser_sync/browser/profile_sync_service.cc

Issue 2284283002: Remove stl_util's STLElementDeleter from sync. (Closed)
Patch Set: Created 4 years, 4 months 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
« no previous file with comments | « no previous file | components/sync/core/sync_manager.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/browser_sync/browser/profile_sync_service.cc
diff --git a/components/browser_sync/browser/profile_sync_service.cc b/components/browser_sync/browser/profile_sync_service.cc
index a23b37b70282cccb5645fae0277583df6e174878..b53fe25c435a6cd3c43bfa77e2924f598bd84df5 100644
--- a/components/browser_sync/browser/profile_sync_service.cc
+++ b/components/browser_sync/browser/profile_sync_service.cc
@@ -20,6 +20,7 @@
#include "base/files/file_util.h"
#include "base/logging.h"
#include "base/macros.h"
+#include "base/memory/ptr_util.h"
#include "base/memory/ref_counted.h"
#include "base/metrics/histogram.h"
#include "base/profiler/scoped_tracker.h"
@@ -2201,7 +2202,7 @@ class GetAllNodesRequestHelper
void OnReceivedNodesForTypes(
const std::vector<syncer::ModelType>& types,
- ScopedVector<base::ListValue> scoped_node_lists);
+ std::vector<std::unique_ptr<base::ListValue>> scoped_node_lists);
private:
friend class base::RefCountedThreadSafe<GetAllNodesRequestHelper>;
@@ -2232,25 +2233,21 @@ GetAllNodesRequestHelper::~GetAllNodesRequestHelper() {
//
// The nodes for several types can be returned at the same time by specifying
// their types in the |types| array, and putting their results at the
-// correspnding indices in the |scoped_node_lists|.
+// corresponding indices in the |node_lists|.
void GetAllNodesRequestHelper::OnReceivedNodesForTypes(
const std::vector<syncer::ModelType>& types,
- ScopedVector<base::ListValue> scoped_node_lists) {
- DCHECK_EQ(types.size(), scoped_node_lists.size());
-
- // Take unsafe ownership of the node list.
- std::vector<base::ListValue*> node_lists;
- scoped_node_lists.release(&node_lists);
+ std::vector<std::unique_ptr<base::ListValue>> node_lists) {
+ DCHECK_EQ(types.size(), node_lists.size());
for (size_t i = 0; i < node_lists.size() && i < types.size(); ++i) {
const ModelType type = types[i];
- base::ListValue* node_list = node_lists[i];
+ std::unique_ptr<base::Value> node_list = std::move(node_lists[i]);
// Add these results to our list.
std::unique_ptr<base::DictionaryValue> type_dict(
new base::DictionaryValue());
type_dict->SetString("type", ModelTypeToString(type));
- type_dict->Set("nodes", node_list);
+ type_dict->Set("nodes", std::move(node_list));
result_accumulator_->Append(std::move(type_dict));
// Remember that this part of the request is satisfied.
@@ -2275,11 +2272,11 @@ void ProfileSyncService::GetAllNodes(
if (!backend_initialized_) {
// If there's no backend available to fulfill the request, handle it here.
- ScopedVector<base::ListValue> empty_results;
+ std::vector<std::unique_ptr<base::ListValue>> empty_results;
std::vector<ModelType> type_vector;
for (ModelTypeSet::Iterator it = all_types.First(); it.Good(); it.Inc()) {
type_vector.push_back(it.Get());
- empty_results.push_back(new base::ListValue());
+ empty_results.push_back(base::MakeUnique<base::ListValue>());
}
helper->OnReceivedNodesForTypes(type_vector, std::move(empty_results));
} else {
« no previous file with comments | « no previous file | components/sync/core/sync_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698