Index: chrome/browser/chromeos/chrome_browser_main_chromeos.cc |
diff --git a/chrome/browser/chromeos/chrome_browser_main_chromeos.cc b/chrome/browser/chromeos/chrome_browser_main_chromeos.cc |
index ec638447648d3990c79548b1f3700cffd1b8ac50..63c8be43f0ecccac80ea562840560ad473c46bba 100644 |
--- a/chrome/browser/chromeos/chrome_browser_main_chromeos.cc |
+++ b/chrome/browser/chromeos/chrome_browser_main_chromeos.cc |
@@ -66,6 +66,7 @@ |
#include "chrome/browser/chromeos/power/user_activity_notifier.h" |
#include "chrome/browser/chromeos/power/video_activity_notifier.h" |
#include "chrome/browser/chromeos/screensaver/screensaver_controller.h" |
+#include "chrome/browser/chromeos/settings/device_oauth2_token_service_factory.h" |
#include "chrome/browser/chromeos/settings/device_settings_service.h" |
#include "chrome/browser/chromeos/settings/owner_key_util.h" |
#include "chrome/browser/chromeos/system/automatic_reboot_manager.h" |
@@ -450,6 +451,8 @@ void ChromeBrowserMainPartsChromeos::PreMainMessageLoopRun() { |
SystemKeyEventListener::Initialize(); |
} |
+ chromeos::DeviceOAuth2TokenServiceFactory::Initialize(); |
+ |
ChromeBrowserMainPartsLinux::PreMainMessageLoopRun(); |
} |
@@ -689,6 +692,9 @@ void ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() { |
// cause it to crash during shutdown. |
LoginUtils::Get()->StopBackgroundFetchers(); |
+ // Stops all in-flight OAuth2 token fetchers before the IO thread stops. |
+ chromeos::DeviceOAuth2TokenServiceFactory::Shutdown(); |
+ |
// Shutdown the upgrade detector for Chrome OS. The upgrade detector |
// stops monitoring changes from the update engine. |
if (UpgradeDetectorChromeos::GetInstance()) |