| Index: chrome/browser/background_contents_service.cc
|
| diff --git a/chrome/browser/background_contents_service.cc b/chrome/browser/background_contents_service.cc
|
| index 1c22b5195572e004c465980f2c6ab9ea23c160f3..46a5f07a79a8f940d3b1b1e6ac7e02826f6d623d 100644
|
| --- a/chrome/browser/background_contents_service.cc
|
| +++ b/chrome/browser/background_contents_service.cc
|
| @@ -229,7 +229,7 @@ void BackgroundContentsService::Observe(NotificationType type,
|
| if (extension && extension->background_url().is_valid())
|
| break;
|
| }
|
| - RegisterBackgroundContents(Details<BackgroundContents>(details).ptr());
|
| + RegisterBackgroundContents(bgcontents);
|
| break;
|
| }
|
| case NotificationType::EXTENSION_LOADED: {
|
| @@ -387,9 +387,10 @@ void BackgroundContentsService::LoadBackgroundContentsFromDictionary(
|
| DCHECK(extensions_service);
|
|
|
| DictionaryValue* dict;
|
| - contents->GetDictionaryWithoutPathExpansion(extension_id, &dict);
|
| - if (dict == NULL)
|
| + if (!contents->GetDictionaryWithoutPathExpansion(extension_id, &dict) ||
|
| + dict == NULL)
|
| return;
|
| +
|
| string16 frame_name;
|
| std::string url;
|
| dict->GetString(kUrlKey, &url);
|
| @@ -518,6 +519,8 @@ void BackgroundContentsService::BackgroundContentsOpened(
|
| DCHECK(!details->application_id.empty());
|
| contents_map_[details->application_id].contents = details->contents;
|
| contents_map_[details->application_id].frame_name = details->frame_name;
|
| +
|
| + ScheduleCloseBalloon(UTF16ToASCII(details->application_id));
|
| }
|
|
|
| // Used by test code and debug checks to verify whether a given
|
|
|