| Index: chrome/browser/extensions/extension_process_manager.cc
|
| ===================================================================
|
| --- chrome/browser/extensions/extension_process_manager.cc (revision 34039)
|
| +++ chrome/browser/extensions/extension_process_manager.cc (working copy)
|
| @@ -49,6 +49,7 @@
|
| }
|
|
|
| ExtensionProcessManager::~ExtensionProcessManager() {
|
| + CloseBackgroundHosts();
|
| DCHECK(background_hosts_.empty());
|
| }
|
|
|
| @@ -57,7 +58,8 @@
|
| Browser* browser,
|
| ViewType::Type view_type) {
|
| DCHECK(extension);
|
| - DCHECK(browser);
|
| + // A NULL browser may only be given for pop-up views.
|
| + DCHECK(browser || (!browser && view_type == ViewType::EXTENSION_POPUP));
|
| ExtensionHost* host =
|
| new ExtensionHost(extension, GetSiteInstanceForURL(url), url, view_type);
|
| host->CreateView(browser);
|
| @@ -68,7 +70,8 @@
|
| ExtensionHost* ExtensionProcessManager::CreateView(const GURL& url,
|
| Browser* browser,
|
| ViewType::Type view_type) {
|
| - DCHECK(browser);
|
| + // A NULL browser may only be given for pop-up views.
|
| + DCHECK(browser || (!browser && view_type == ViewType::EXTENSION_POPUP));
|
| ExtensionsService* service =
|
| browsing_instance_->profile()->GetExtensionsService();
|
| if (service) {
|
|
|