| Index: chrome/browser/sessions/tab_restore_service.cc
|
| diff --git a/chrome/browser/sessions/tab_restore_service.cc b/chrome/browser/sessions/tab_restore_service.cc
|
| index c4f3ae4ecbaf536ae7a65422f56937124fe45509..7d32607e810fe2c8686f475cb8aa06139b59bb5c 100644
|
| --- a/chrome/browser/sessions/tab_restore_service.cc
|
| +++ b/chrome/browser/sessions/tab_restore_service.cc
|
| @@ -155,7 +155,10 @@ void RemoveEntryByID(SessionID::id_type id,
|
| void RecordAppLaunch(Browser* browser, const TabRestoreService::Tab& tab) {
|
| GURL url = tab.navigations.at(tab.current_navigation_index).virtual_url();
|
| Profile* profile = browser->profile();
|
| - if (!profile->GetExtensionService()->IsInstalledApp(url))
|
| + // TODO: the ExtensionService should never be NULL, but in some cases it is,
|
| + // see bug 73768. After it is resolved, the explicit test can go away.
|
| + ExtensionService* service = profile->GetExtensionService();
|
| + if (!service || !service->IsInstalledApp(url))
|
| return;
|
|
|
| UMA_HISTOGRAM_ENUMERATION(extension_misc::kAppLaunchHistogram,
|
|
|