Index: chrome/browser/extensions/settings_api_helpers.cc |
diff --git a/chrome/browser/extensions/settings_api_helpers.cc b/chrome/browser/extensions/settings_api_helpers.cc |
index 839098cbd4b0814000c3a36dc0a7a9ef4bb98871..415172925061bc6a40557491b20c2a3d8a51fbcd 100644 |
--- a/chrome/browser/extensions/settings_api_helpers.cc |
+++ b/chrome/browser/extensions/settings_api_helpers.cc |
@@ -11,10 +11,14 @@ |
namespace extensions { |
-const extensions::SettingsOverrides* FindOverridingExtension( |
+namespace { |
+ |
+// Find which |extension| is overriding a particular |type| of setting. Returns |
+// the SettingsOverride object, or NULL if no |extension| is overriding that |
Devlin
2014/06/03 23:55:10
nit: No longer returns the SettingsOverride object
|
+// particular setting. |
+const Extension* FindOverridingExtension( |
content::BrowserContext* browser_context, |
- SettingsApiOverrideType type, |
- const Extension** extension) { |
+ SettingsApiOverrideType type) { |
const extensions::ExtensionSet& extensions = |
extensions::ExtensionRegistry::Get(browser_context)->enabled_extensions(); |
@@ -50,54 +54,28 @@ const extensions::SettingsOverrides* FindOverridingExtension( |
!preference_api->DoesExtensionControlPref((*it)->id(), key, NULL)) |
continue; // Not primary. |
- // Found the primary extension, return its setting. |
- *extension = *it; |
- return settings; |
+ // Found the primary extension. |
+ return *it; |
} |
} |
return NULL; |
} |
-const Extension* OverridesHomepage(content::BrowserContext* browser_context, |
- GURL* home_page_url) { |
- const extensions::Extension* extension = NULL; |
- const extensions::SettingsOverrides* settings = |
- FindOverridingExtension( |
- browser_context, BUBBLE_TYPE_HOME_PAGE, &extension); |
+} // namespace |
- if (settings && home_page_url) |
- *home_page_url = *settings->homepage; |
- return extension; |
+const Extension* OverridesHomepage(content::BrowserContext* browser_context) { |
+ return FindOverridingExtension(browser_context, BUBBLE_TYPE_HOME_PAGE); |
} |
-const Extension* OverridesStartupPages(content::BrowserContext* browser_context, |
- std::vector<GURL>* startup_pages) { |
- const extensions::Extension* extension = NULL; |
- const extensions::SettingsOverrides* settings = |
- FindOverridingExtension( |
- browser_context, BUBBLE_TYPE_STARTUP_PAGES, &extension); |
- if (settings && startup_pages) { |
- startup_pages->clear(); |
- for (std::vector<GURL>::const_iterator it = settings->startup_pages.begin(); |
- it != settings->startup_pages.end(); |
- ++it) |
- startup_pages->push_back(GURL(*it)); |
- } |
- return extension; |
+const Extension* OverridesStartupPages( |
+ content::BrowserContext* browser_context) { |
+ return FindOverridingExtension(browser_context, BUBBLE_TYPE_STARTUP_PAGES); |
} |
const Extension* OverridesSearchEngine( |
- content::BrowserContext* browser_context, |
- api::manifest_types::ChromeSettingsOverrides::Search_provider* |
- search_provider) { |
- const extensions::Extension* extension = NULL; |
- const extensions::SettingsOverrides* settings = |
- FindOverridingExtension( |
- browser_context, BUBBLE_TYPE_SEARCH_ENGINE, &extension); |
- if (settings && search_provider) |
- search_provider = settings->search_engine.get(); |
- return extension; |
+ content::BrowserContext* browser_context) { |
+ return FindOverridingExtension(browser_context, BUBBLE_TYPE_SEARCH_ENGINE); |
} |
} // namespace extensions |