Index: extensions/browser/process_manager.cc |
diff --git a/extensions/browser/process_manager.cc b/extensions/browser/process_manager.cc |
index 1eb2903d2b7e774ead5524b8e343e111b394d24d..1c408971c90c47da703acebe91f8adc30897aeb3 100644 |
--- a/extensions/browser/process_manager.cc |
+++ b/extensions/browser/process_manager.cc |
@@ -248,8 +248,11 @@ ExtensionHost* ProcessManager::CreateBackgroundHost(const Extension* extension, |
const GURL& url) { |
// Hosted apps are taken care of from BackgroundContentsService. Ignore them |
// here. |
- if (extension->is_hosted_app()) |
+ if (extension->is_hosted_app() || |
+ !ExtensionsBrowserClient::Get()-> |
+ IsBackgroundPageAllowed(GetBrowserContext())) { |
return NULL; |
+ } |
// Don't create multiple background hosts for an extension. |
if (ExtensionHost* host = GetBackgroundHostForExtension(extension->id())) |
@@ -709,8 +712,11 @@ void ProcessManager::OnDevToolsStateChanged( |
} |
void ProcessManager::CreateBackgroundHostsForProfileStartup() { |
- if (startup_background_hosts_created_) |
+ if (startup_background_hosts_created_ || |
+ !ExtensionsBrowserClient::Get()-> |
+ IsBackgroundPageAllowed(GetBrowserContext())) { |
return; |
+ } |
ExtensionService* service = ExtensionSystem::GetForBrowserContext( |
GetBrowserContext())->extension_service(); |