| Index: chrome/browser/managed_prefs_banner_base.cc
|
| diff --git a/chrome/browser/managed_prefs_banner_base.cc b/chrome/browser/managed_prefs_banner_base.cc
|
| index 5251d7fe4e3b95540f4d956060414afbefce285e..09dcde6445f30a972bd7cd2a2a7c43b45952da5f 100644
|
| --- a/chrome/browser/managed_prefs_banner_base.cc
|
| +++ b/chrome/browser/managed_prefs_banner_base.cc
|
| @@ -12,11 +12,15 @@
|
| ManagedPrefsBannerBase::ManagedPrefsBannerBase(PrefService* prefs,
|
| const wchar_t** relevant_prefs,
|
| size_t count)
|
| - : prefs_(prefs),
|
| - relevant_prefs_(relevant_prefs, relevant_prefs + count) {
|
| - for (PrefSet::const_iterator pref(relevant_prefs_.begin());
|
| - pref != relevant_prefs_.end(); ++pref)
|
| - prefs_->AddPrefObserver(pref->c_str(), this);
|
| + : prefs_(prefs) {
|
| + for (size_t i = 0; i < count; ++i) {
|
| + // Ignore prefs that are not registered.
|
| + const wchar_t* pref = relevant_prefs[i];
|
| + if (prefs->FindPreference(pref)) {
|
| + prefs_->AddPrefObserver(pref, this);
|
| + relevant_prefs_.insert(pref);
|
| + }
|
| + }
|
| }
|
|
|
| ManagedPrefsBannerBase::~ManagedPrefsBannerBase() {
|
|
|