Index: chrome/browser/ui/startup/startup_browser_creator_impl.cc |
diff --git a/chrome/browser/ui/startup/startup_browser_creator_impl.cc b/chrome/browser/ui/startup/startup_browser_creator_impl.cc |
index 3a7b5c32a9b8dcf15459b57acab0c990bc7198e0..59287b027d810c878632070ce1d781d228887fa9 100644 |
--- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc |
+++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc |
@@ -32,6 +32,7 @@ |
#include "chrome/browser/defaults.h" |
#include "chrome/browser/extensions/extension_creator.h" |
#include "chrome/browser/extensions/extension_service.h" |
+#include "chrome/browser/extensions/extension_system.h" |
#include "chrome/browser/extensions/pack_extension_job.h" |
#include "chrome/browser/first_run/first_run.h" |
#include "chrome/browser/google/google_util.h" |
@@ -389,6 +390,14 @@ bool StartupBrowserCreatorImpl::Launch(Profile* profile, |
ShellIntegration::MigrateChromiumShortcuts(); |
#endif // defined(OS_WIN) |
+#if defined(ENABLE_EXTENSIONS) |
+ // If we deferred creation of background extension hosts, we want to create |
+ // them now that the session (if any) has been restored. |
+ ExtensionProcessManager* process_manager = |
+ extensions::ExtensionSystem::Get(profile)->process_manager(); |
+ process_manager->DeferBackgroundHostCreation(false); |
+#endif |
+ |
return true; |
} |