Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1705)

Unified Diff: chrome/browser/extensions/installed_loader.cc

Issue 12211029: Sanity tweaks to the extension blacklist: check all extensions at once on (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: ready for review Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/installed_loader.cc
diff --git a/chrome/browser/extensions/installed_loader.cc b/chrome/browser/extensions/installed_loader.cc
index 22d414980c029fc3575e21a43d4610f3959b8e89..5a5ded6c592df3dfa7fc92d546dcce1beeda9fe5 100644
--- a/chrome/browser/extensions/installed_loader.cc
+++ b/chrome/browser/extensions/installed_loader.cc
@@ -88,7 +88,8 @@ InstalledLoader::InstalledLoader(ExtensionService* extension_service)
InstalledLoader::~InstalledLoader() {
}
-void InstalledLoader::Load(const ExtensionInfo& info, bool write_to_prefs) {
+scoped_refptr<const Extension> InstalledLoader::Load(const ExtensionInfo& info,
+ bool write_to_prefs) {
std::string error;
scoped_refptr<const Extension> extension(NULL);
if (info.extension_manifest.get()) {
@@ -128,13 +129,13 @@ void InstalledLoader::Load(const ExtensionInfo& info, bool write_to_prefs) {
if (!extension) {
extension_service_->
ReportExtensionLoadError(info.extension_path, error, false);
- return;
+ return scoped_refptr<const Extension>();
}
if (write_to_prefs)
extension_prefs_->UpdateManifest(extension);
- extension_service_->AddExtension(extension);
+ return extension;
}
void InstalledLoader::LoadAllExtensions() {
@@ -212,10 +213,15 @@ void InstalledLoader::LoadAllExtensions() {
}
}
+ std::vector<scoped_refptr<const Extension> > loaded_extensions;
for (size_t i = 0; i < extensions_info->size(); ++i) {
- Load(*extensions_info->at(i), should_write_prefs);
+ scoped_refptr<const Extension> loaded_extension =
+ Load(*extensions_info->at(i), should_write_prefs);
+ if (loaded_extension)
+ loaded_extensions.push_back(loaded_extension);
}
+ extension_service_->AddExtensions(loaded_extensions);
extension_service_->OnLoadedInstalledExtensions();
// The histograms Extensions.ManifestReload* allow us to validate

Powered by Google App Engine
This is Rietveld 408576698