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

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

Issue 457028: Ok, here is a different approach at this change. (Closed)
Patch Set: Be even more paranoid Created 11 years, 1 month 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/extensions_service.cc
diff --git a/chrome/browser/extensions/extensions_service.cc b/chrome/browser/extensions/extensions_service.cc
index 09f964c9be53ed52df0ea7913cc4b52b550a7578..2ad639a8ca592e120ae6ce2fed2c0ad2f0e76e0d 100644
--- a/chrome/browser/extensions/extensions_service.cc
+++ b/chrome/browser/extensions/extensions_service.cc
@@ -26,6 +26,7 @@
#include "chrome/browser/extensions/external_pref_extension_provider.h"
#include "chrome/browser/profile.h"
#include "chrome/browser/net/chrome_url_request_context.h"
+#include "chrome/common/child_process_logging.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/common/extensions/extension.h"
#include "chrome/common/extensions/extension_constants.h"
@@ -257,6 +258,7 @@ void ExtensionsService::EnableExtension(const std::string& extension_id) {
extension->GetChromeURLOverrides());
NotifyExtensionLoaded(extension);
+ UpdateActiveExtensionsInCrashReporter();
}
void ExtensionsService::DisableExtension(const std::string& extension_id) {
@@ -281,6 +283,7 @@ void ExtensionsService::DisableExtension(const std::string& extension_id) {
extension->GetChromeURLOverrides());
NotifyExtensionUnloaded(extension);
+ UpdateActiveExtensionsInCrashReporter();
}
void ExtensionsService::LoadExtension(const FilePath& extension_path) {
@@ -499,6 +502,7 @@ void ExtensionsService::UnloadExtension(const std::string& extension_id) {
extensions_.erase(iter);
NotifyExtensionUnloaded(extension.get());
+ UpdateActiveExtensionsInCrashReporter();
}
void ExtensionsService::UnloadAllExtensions() {
@@ -622,6 +626,18 @@ void ExtensionsService::OnExtensionLoaded(Extension* extension,
break;
}
}
+
+ UpdateActiveExtensionsInCrashReporter();
+}
+
+void ExtensionsService::UpdateActiveExtensionsInCrashReporter() {
+ std::vector<std::string> extension_ids;
+ for (size_t i = 0; i < extensions_.size(); ++i) {
+ if (!extensions_[i]->IsTheme())
+ extension_ids.push_back(extensions_[i]->id());
+ }
+
+ child_process_logging::SetActiveExtensions(extension_ids);
}
void ExtensionsService::OnExtensionInstalled(Extension* extension,
« no previous file with comments | « chrome/browser/extensions/extensions_service.h ('k') | chrome/browser/renderer_host/browser_render_process_host.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698