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 5d078d33ec74b1d184cc404bf053b8db0a7e48fc..f6976dc9c4e40efaf217476da4f9bff26371b780 100644 |
--- a/chrome/browser/chromeos/chrome_browser_main_chromeos.cc |
+++ b/chrome/browser/chromeos/chrome_browser_main_chromeos.cc |
@@ -88,12 +88,8 @@ ChromeBrowserMainPartsChromeos::ChromeBrowserMainPartsChromeos( |
} |
ChromeBrowserMainPartsChromeos::~ChromeBrowserMainPartsChromeos() { |
- chromeos::accessibility::SystemEventObserver::Shutdown(); |
- |
chromeos::disks::DiskMountManager::Shutdown(); |
- chromeos::BluetoothManager::Shutdown(); |
- |
chromeos::DBusThreadManager::Shutdown(); |
if (!parameters().ui_task && chromeos::CrosLibrary::Get()) |
@@ -222,4 +218,10 @@ void ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() { |
chromeos::DBusThreadManager::Get()->GetPowerManagerClient() |
->RemoveObserver(brightness_observer_.get()); |
} |
+ |
+ // Shut these down here instead of in the destructor in case we exited before |
+ // running BrowserMainLoop::RunMainMessageLoopParts() and never initialized |
+ // these. |
+ chromeos::accessibility::SystemEventObserver::Shutdown(); |
+ chromeos::BluetoothManager::Shutdown(); |
} |