Index: chrome/browser/prefs/pref_service.cc |
diff --git a/chrome/browser/prefs/pref_service.cc b/chrome/browser/prefs/pref_service.cc |
index 2ab04f89704f96059a3865a67e7bf74fe2f95917..e0b9703ca76527631b4ba3e5d0313068bf803814 100644 |
--- a/chrome/browser/prefs/pref_service.cc |
+++ b/chrome/browser/prefs/pref_service.cc |
@@ -356,6 +356,15 @@ bool PrefService::HasPrefPath(const char* path) const { |
return pref && !pref->IsDefaultValue(); |
} |
+void PrefService::GetPreferenceValues(DictionaryValue* out) const { |
+ DCHECK(CalledOnValidThread()); |
+ DefaultPrefStore::const_iterator i = default_store_->begin(); |
+ for (; i != default_store_->end(); ++i) { |
+ const Value* value = FindPreference(i->first.c_str())->GetValue(); |
+ out->Set(i->first, value->DeepCopy()); |
Mattias Nissler (ping if slow)
2011/01/26 17:55:11
So here is the problem that Set splits up the path
battre
2011/01/27 09:53:27
This is what the currently only consumer expects t
|
+ } |
+} |
+ |
const PrefService::Preference* PrefService::FindPreference( |
const char* pref_name) const { |
DCHECK(CalledOnValidThread()); |