Index: chrome/browser/content_settings/content_settings_pref_provider.cc |
diff --git a/chrome/browser/content_settings/content_settings_pref_provider.cc b/chrome/browser/content_settings/content_settings_pref_provider.cc |
index 6dfb9ad87a86f2238ae7c4f50ccc56684d7ffdc2..1bf02a1c165b183398ff601290ba9128404ae5d3 100644 |
--- a/chrome/browser/content_settings/content_settings_pref_provider.cc |
+++ b/chrome/browser/content_settings/content_settings_pref_provider.cc |
@@ -217,31 +217,24 @@ void PrefProvider::ClearAllContentSettingsRules( |
std::string()); |
} |
-void PrefProvider::Observe( |
- int type, |
- const content::NotificationSource& source, |
- const content::NotificationDetails& details) { |
+void PrefProvider::OnPreferenceChanged(PrefServiceBase* service, |
+ const std::string& name) { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
- if (type == chrome::NOTIFICATION_PREF_CHANGED) { |
- DCHECK_EQ(prefs_, content::Source<PrefService>(source).ptr()); |
- if (updating_preferences_) |
- return; |
- |
- std::string* name = content::Details<std::string>(details).ptr(); |
- if (*name != prefs::kContentSettingsPatternPairs) { |
- NOTREACHED() << "Unexpected preference observed"; |
- return; |
- } |
- ReadContentSettingsFromPref(true); |
+ DCHECK_EQ(prefs_, service); |
+ if (updating_preferences_) |
+ return; |
- NotifyObservers(ContentSettingsPattern(), |
- ContentSettingsPattern(), |
- CONTENT_SETTINGS_TYPE_DEFAULT, |
- std::string()); |
- } else { |
- NOTREACHED() << "Unexpected notification"; |
+ if (name != prefs::kContentSettingsPatternPairs) { |
+ NOTREACHED() << "Unexpected preference observed"; |
+ return; |
} |
+ ReadContentSettingsFromPref(true); |
+ |
+ NotifyObservers(ContentSettingsPattern(), |
+ ContentSettingsPattern(), |
+ CONTENT_SETTINGS_TYPE_DEFAULT, |
+ std::string()); |
} |
PrefProvider::~PrefProvider() { |