Index: chrome/common/pref_service.cc |
=================================================================== |
--- chrome/common/pref_service.cc (revision 5823) |
+++ chrome/common/pref_service.cc (working copy) |
@@ -4,6 +4,7 @@ |
#include "chrome/common/pref_service.h" |
+#include "base/compiler_specific.h" |
#include "base/file_util.h" |
#include "base/logging.h" |
#include "base/message_loop.h" |
@@ -40,13 +41,10 @@ |
int bytes_written = file_util::WriteFile(tmp_file_name, data_.c_str(), |
static_cast<int>(data_.length())); |
if (bytes_written != -1) { |
- if (!MoveFileEx(tmp_file_name.c_str(), file_name_.c_str(), |
- MOVEFILE_COPY_ALLOWED | MOVEFILE_REPLACE_EXISTING)) { |
+ if (!file_util::Move(tmp_file_name, file_name_)) { |
// Rename failed. Try again on the off chance someone has locked either |
// file and hope we're successful the second time through. |
- BOOL move_result = |
- MoveFileEx(tmp_file_name.c_str(), file_name_.c_str(), |
- MOVEFILE_COPY_ALLOWED | MOVEFILE_REPLACE_EXISTING); |
+ bool move_result = file_util::Move(tmp_file_name, file_name_); |
DCHECK(move_result); |
} |
} |
@@ -56,7 +54,7 @@ |
std::wstring file_name_; |
std::string data_; |
- DISALLOW_EVIL_CONSTRUCTORS(SaveLaterTask); |
+ DISALLOW_COPY_AND_ASSIGN(SaveLaterTask); |
}; |
// A helper function for RegisterLocalized*Pref that creates a Value* based on |
@@ -75,23 +73,12 @@ |
} |
case Value::TYPE_INTEGER: { |
- int num_int = 0; |
- int parsed_values = swscanf_s(resource_string.c_str(), L"%d", &num_int); |
- // This is a trusted value (comes from our locale dll), so it should |
- // successfully parse. |
- DCHECK(parsed_values == 1); |
- return Value::CreateIntegerValue(num_int); |
+ return Value::CreateIntegerValue(StringToInt(resource_string)); |
break; |
} |
case Value::TYPE_REAL: { |
- double num_double = 0.0; |
- int parsed_values = swscanf_s(resource_string.c_str(), L"%lf", |
- &num_double); |
- // This is a trusted value (comes from our locale dll), so it should |
- // successfully parse. |
- DCHECK(parsed_values == 1); |
- return Value::CreateRealValue(num_double); |
+ return Value::CreateRealValue(StringToDouble(resource_string)); |
break; |
} |
@@ -121,8 +108,7 @@ |
: persistent_(new DictionaryValue), |
transient_(new DictionaryValue), |
pref_filename_(pref_filename), |
-#pragma warning(suppress: 4355) // Okay to pass "this" here. |
- save_preferences_factory_(this) { |
+ ALLOW_THIS_IN_INITIALIZER_LIST(save_preferences_factory_(this)) { |
LoadPersistentPrefs(pref_filename_); |
} |
@@ -434,7 +420,7 @@ |
// Verify that this observer doesn't already exist. |
NotificationObserverList::Iterator it(*observer_list); |
NotificationObserver* existing_obs; |
- while (existing_obs = it.GetNext()) { |
+ while ((existing_obs = it.GetNext()) != NULL) { |
DCHECK(existing_obs != obs) << path << " observer already registered"; |
if (existing_obs == obs) |
return; |
@@ -640,7 +626,7 @@ |
NotificationObserverList::Iterator it(*(observer_iterator->second)); |
NotificationObserver* observer; |
- while (observer = it.GetNext()) { |
+ while ((observer = it.GetNext()) != NULL) { |
observer->Observe(NOTIFY_PREF_CHANGED, |
Source<PrefService>(this), |
Details<std::wstring>(&path_str)); |
@@ -653,10 +639,10 @@ |
PrefService::Preference::Preference(DictionaryValue* root_pref, |
const wchar_t* name, |
Value* default_value) |
- : root_pref_(root_pref), |
+ : type_(Value::TYPE_NULL), |
name_(name), |
default_value_(default_value), |
- type_(Value::TYPE_NULL) { |
+ root_pref_(root_pref) { |
DCHECK(name); |
if (default_value) { |