Index: base/prefs/pref_service.cc |
diff --git a/base/prefs/pref_service.cc b/base/prefs/pref_service.cc |
index 65605c5f8e6d346f1d10f82b3a1dc76b08e989a9..9858f2601cc36e6db8f3fc04b42d15d823c175c9 100644 |
--- a/base/prefs/pref_service.cc |
+++ b/base/prefs/pref_service.cc |
@@ -486,6 +486,20 @@ const base::Value* PrefService::Preference::GetValue() const { |
return result; |
} |
+const base::Value* PrefService::Preference::GetUserValue() const { |
+ DCHECK(pref_service_->FindPreference(name_.c_str())) |
+ << "Must register pref before getting its value"; |
+ |
+ const base::Value* found_value = NULL; |
+ if (pref_value_store()->GetUserValue(name_, type_, &found_value)) { |
+ DCHECK(found_value->IsType(type_)); |
+ return found_value; |
+ } |
+ |
+ // The pref has no user set value. |
+ return NULL; |
+} |
+ |
const base::Value* PrefService::Preference::GetRecommendedValue() const { |
DCHECK(pref_service_->FindPreference(name_.c_str())) << |
"Must register pref before getting its value"; |