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

Side by Side Diff: chrome/browser/content_settings/content_settings_default_provider.cc

Issue 385263004: Get rid of some uses of CreateIntegerValue (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 5 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 | Annotate | Revision Log
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 "chrome/browser/content_settings/content_settings_default_provider.h" 5 #include "chrome/browser/content_settings/content_settings_default_provider.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/auto_reset.h" 10 #include "base/auto_reset.h"
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after
216 // upper layers may call |GetAllContentSettingRules| which acquires |lock_| 216 // upper layers may call |GetAllContentSettingRules| which acquires |lock_|
217 // again. 217 // again.
218 DictionaryPrefUpdate update(prefs_, prefs::kDefaultContentSettings); 218 DictionaryPrefUpdate update(prefs_, prefs::kDefaultContentSettings);
219 base::DictionaryValue* default_settings_dictionary = update.Get(); 219 base::DictionaryValue* default_settings_dictionary = update.Get();
220 base::AutoLock lock(lock_); 220 base::AutoLock lock(lock_);
221 if (value.get() == NULL || 221 if (value.get() == NULL ||
222 ValueToContentSetting(value.get()) == kDefaultSettings[content_type]) { 222 ValueToContentSetting(value.get()) == kDefaultSettings[content_type]) {
223 // If |value| is NULL we need to reset the default setting the the 223 // If |value| is NULL we need to reset the default setting the the
224 // hardcoded default. 224 // hardcoded default.
225 default_settings_[content_type].reset( 225 default_settings_[content_type].reset(
226 base::Value::CreateIntegerValue(kDefaultSettings[content_type])); 226 new base::FundamentalValue(kDefaultSettings[content_type]));
227 227
228 // Remove the corresponding pref entry since the hardcoded default value 228 // Remove the corresponding pref entry since the hardcoded default value
229 // is used. 229 // is used.
230 default_settings_dictionary->RemoveWithoutPathExpansion( 230 default_settings_dictionary->RemoveWithoutPathExpansion(
231 GetTypeName(content_type), NULL); 231 GetTypeName(content_type), NULL);
232 } else { 232 } else {
233 default_settings_[content_type].reset(value->DeepCopy()); 233 default_settings_[content_type].reset(value->DeepCopy());
234 // Transfer ownership of |value| to the |default_settings_dictionary|. 234 // Transfer ownership of |value| to the |default_settings_dictionary|.
235 default_settings_dictionary->SetWithoutPathExpansion( 235 default_settings_dictionary->SetWithoutPathExpansion(
236 GetTypeName(content_type), value.release()); 236 GetTypeName(content_type), value.release());
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
308 308
309 ForceDefaultsToBeExplicit(); 309 ForceDefaultsToBeExplicit();
310 } 310 }
311 311
312 void DefaultProvider::ForceDefaultsToBeExplicit() { 312 void DefaultProvider::ForceDefaultsToBeExplicit() {
313 for (int i = 0; i < CONTENT_SETTINGS_NUM_TYPES; ++i) { 313 for (int i = 0; i < CONTENT_SETTINGS_NUM_TYPES; ++i) {
314 ContentSettingsType type = ContentSettingsType(i); 314 ContentSettingsType type = ContentSettingsType(i);
315 if (!default_settings_[type].get() && 315 if (!default_settings_[type].get() &&
316 kDefaultSettings[i] != CONTENT_SETTING_DEFAULT) { 316 kDefaultSettings[i] != CONTENT_SETTING_DEFAULT) {
317 default_settings_[type].reset( 317 default_settings_[type].reset(
318 base::Value::CreateIntegerValue(kDefaultSettings[i])); 318 new base::FundamentalValue(kDefaultSettings[i]));
319 } 319 }
320 } 320 }
321 } 321 }
322 322
323 void DefaultProvider::GetSettingsFromDictionary( 323 void DefaultProvider::GetSettingsFromDictionary(
324 const base::DictionaryValue* dictionary) { 324 const base::DictionaryValue* dictionary) {
325 for (base::DictionaryValue::Iterator i(*dictionary); 325 for (base::DictionaryValue::Iterator i(*dictionary);
326 !i.IsAtEnd(); i.Advance()) { 326 !i.IsAtEnd(); i.Advance()) {
327 const std::string& content_type(i.key()); 327 const std::string& content_type(i.key());
328 for (size_t type = 0; type < CONTENT_SETTINGS_NUM_TYPES; ++type) { 328 for (size_t type = 0; type < CONTENT_SETTINGS_NUM_TYPES; ++type) {
329 if (content_type == GetTypeName(ContentSettingsType(type))) { 329 if (content_type == GetTypeName(ContentSettingsType(type))) {
330 int int_value = CONTENT_SETTING_DEFAULT; 330 int int_value = CONTENT_SETTING_DEFAULT;
331 bool is_integer = i.value().GetAsInteger(&int_value); 331 bool is_integer = i.value().GetAsInteger(&int_value);
332 DCHECK(is_integer); 332 DCHECK(is_integer);
333 default_settings_[ContentSettingsType(type)].reset( 333 default_settings_[ContentSettingsType(type)].reset(
334 base::Value::CreateIntegerValue(int_value)); 334 new base::FundamentalValue(int_value));
335 break; 335 break;
336 } 336 }
337 } 337 }
338 } 338 }
339 // Migrate obsolete cookie prompt mode. 339 // Migrate obsolete cookie prompt mode.
340 if (ValueToContentSetting( 340 if (ValueToContentSetting(
341 default_settings_[CONTENT_SETTINGS_TYPE_COOKIES].get()) == 341 default_settings_[CONTENT_SETTINGS_TYPE_COOKIES].get()) ==
342 CONTENT_SETTING_ASK) { 342 CONTENT_SETTING_ASK) {
343 default_settings_[CONTENT_SETTINGS_TYPE_COOKIES].reset( 343 default_settings_[CONTENT_SETTINGS_TYPE_COOKIES].reset(
344 base::Value::CreateIntegerValue(CONTENT_SETTING_BLOCK)); 344 new base::FundamentalValue(CONTENT_SETTING_BLOCK));
345 } 345 }
346 } 346 }
347 347
348 } // namespace content_settings 348 } // namespace content_settings
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698