Index: chrome/browser/metrics/https_engagement_metrics_provider.cc |
diff --git a/chrome/browser/metrics/https_engagement_metrics_provider.cc b/chrome/browser/metrics/https_engagement_metrics_provider.cc |
index d75bd91c6ea995b9ca979455ba2b231a8a0a45df..185d77e690645e7fe1cc7942e95ac5f6da7e4397 100644 |
--- a/chrome/browser/metrics/https_engagement_metrics_provider.cc |
+++ b/chrome/browser/metrics/https_engagement_metrics_provider.cc |
@@ -19,9 +19,16 @@ void HttpsEngagementMetricsProvider::ProvideGeneralMetrics( |
if (!profile_manager) |
return; |
+ // Do not try to create profile here if it does not exist, |
+ // because this method can be called during browser shutdown. |
+ Profile* profile = profile_manager->GetProfileByPath( |
+ profile_manager->GetLastUsedProfileDir( |
+ profile_manager->user_data_dir())); |
+ if (!profile) |
+ return; |
+ |
HttpsEngagementService* engagement_service = |
- HttpsEngagementServiceFactory::GetForBrowserContext( |
- profile_manager->GetLastUsedProfile()); |
+ HttpsEngagementServiceFactory::GetForBrowserContext(profile); |
if (!engagement_service) |
return; |
engagement_service->StoreMetricsAndClear(); |