| Index: chrome/browser/extensions/extension_service.cc
|
| diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc
|
| index 3a6ff8b2c19c3b7e30b2d520324bd35a828c7d36..094a028fdd298b844d0492595e57cf750f666771 100644
|
| --- a/chrome/browser/extensions/extension_service.cc
|
| +++ b/chrome/browser/extensions/extension_service.cc
|
| @@ -21,6 +21,7 @@
|
| #include "base/string_number_conversions.h"
|
| #include "base/string_util.h"
|
| #include "base/stringprintf.h"
|
| +#include "base/task.h"
|
| #include "base/threading/thread_restrictions.h"
|
| #include "base/time.h"
|
| #include "base/utf_string_conversions.h"
|
| @@ -31,6 +32,7 @@
|
| #include "chrome/browser/browser_process.h"
|
| #include "chrome/browser/chrome_plugin_service_filter.h"
|
| #include "chrome/browser/download/download_extension_api.h"
|
| +#include "chrome/browser/extensions/api/socket/socket_api_controller.h"
|
| #include "chrome/browser/extensions/app_notification_manager.h"
|
| #include "chrome/browser/extensions/apps_promo.h"
|
| #include "chrome/browser/extensions/component_loader.h"
|
| @@ -386,7 +388,8 @@ ExtensionService::ExtensionService(Profile* profile,
|
| permissions_manager_(ALLOW_THIS_IN_INITIALIZER_LIST(this)),
|
| apps_promo_(profile->GetPrefs()),
|
| event_routers_initialized_(false),
|
| - extension_warnings_(profile) {
|
| + extension_warnings_(profile),
|
| + socket_controller_(new extensions::SocketController()) {
|
| CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
|
|
| // Figure out if extension installation should be enabled.
|
| @@ -470,6 +473,13 @@ ExtensionService::~ExtensionService() {
|
| ExternalExtensionProviderInterface* provider = i->get();
|
| provider->ServiceShutdown();
|
| }
|
| +
|
| + // TODO(miket): if we find ourselves adding more and more per-API
|
| + // controllers, we should manage them all with an
|
| + // APIControllerController (still working on that name).
|
| + BrowserThread::PostTask(
|
| + BrowserThread::IO, FROM_HERE,
|
| + new DeleteTask<extensions::SocketController>(socket_controller_));
|
| }
|
|
|
| void ExtensionService::InitEventRoutersAfterImport() {
|
|
|