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

Side by Side Diff: components/prefs/pref_member.cc

Issue 2816513002: Revert of Change base::Value::ListStorage to std::vector<base::Value> (Closed)
Patch Set: Created 3 years, 8 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/prefs/pref_member.h" 5 #include "components/prefs/pref_member.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/callback_helpers.h" 10 #include "base/callback_helpers.h"
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
132 bool PrefMemberVectorStringUpdate(const base::Value& value, 132 bool PrefMemberVectorStringUpdate(const base::Value& value,
133 std::vector<std::string>* string_vector) { 133 std::vector<std::string>* string_vector) {
134 if (!value.IsType(base::Value::Type::LIST)) 134 if (!value.IsType(base::Value::Type::LIST))
135 return false; 135 return false;
136 const base::ListValue* list = static_cast<const base::ListValue*>(&value); 136 const base::ListValue* list = static_cast<const base::ListValue*>(&value);
137 137
138 std::vector<std::string> local_vector; 138 std::vector<std::string> local_vector;
139 for (base::ListValue::const_iterator it = list->begin(); 139 for (base::ListValue::const_iterator it = list->begin();
140 it != list->end(); ++it) { 140 it != list->end(); ++it) {
141 std::string string_value; 141 std::string string_value;
142 if (!it->GetAsString(&string_value)) 142 if (!(*it)->GetAsString(&string_value))
143 return false; 143 return false;
144 144
145 local_vector.push_back(string_value); 145 local_vector.push_back(string_value);
146 } 146 }
147 147
148 string_vector->swap(local_vector); 148 string_vector->swap(local_vector);
149 return true; 149 return true;
150 } 150 }
151 151
152 } // namespace subtle 152 } // namespace subtle
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 base::ListValue list_value; 214 base::ListValue list_value;
215 list_value.AppendStrings(value); 215 list_value.AppendStrings(value);
216 prefs()->Set(pref_name(), list_value); 216 prefs()->Set(pref_name(), list_value);
217 } 217 }
218 218
219 template <> 219 template <>
220 bool PrefMember<std::vector<std::string> >::Internal::UpdateValueInternal( 220 bool PrefMember<std::vector<std::string> >::Internal::UpdateValueInternal(
221 const base::Value& value) const { 221 const base::Value& value) const {
222 return subtle::PrefMemberVectorStringUpdate(value, &value_); 222 return subtle::PrefMemberVectorStringUpdate(value, &value_);
223 } 223 }
OLDNEW
« no previous file with comments | « components/policy/core/common/schema.cc ('k') | components/search_engines/template_url_data_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698