| 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 a5abbd1621b2192ea4ca82a2c5324ae37124d180..988b9210cb67c7d887f4b232a97e69b04d7c7052 100644
|
| --- a/chrome/browser/chromeos/chrome_browser_main_chromeos.cc
|
| +++ b/chrome/browser/chromeos/chrome_browser_main_chromeos.cc
|
| @@ -304,7 +304,9 @@ class DBusServices {
|
|
|
| // Always initialize these handlers which should not conflict with
|
| // NetworkLibrary.
|
| - NetworkHandler::Initialize();
|
| + NetworkHandler::Initialize(
|
| + content::BrowserThread::GetMessageLoopProxyForThread(
|
| + content::BrowserThread::IO));
|
| CertLibrary::Initialize();
|
|
|
| // Initialize the network change notifier for Chrome OS. The network
|
| @@ -382,8 +384,6 @@ ChromeBrowserMainPartsChromeos::~ChromeBrowserMainPartsChromeos() {
|
| if (KioskModeSettings::Get()->IsKioskModeEnabled())
|
| ShutdownKioskModeScreensaver();
|
|
|
| - dbus_services_.reset();
|
| -
|
| // To be precise, logout (browser shutdown) is not yet done, but the
|
| // remaining work is negligible, hence we say LogoutDone here.
|
| BootTimesLoader::Get()->AddLogoutTimeMarker("LogoutDone", false);
|
| @@ -838,7 +838,11 @@ void ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() {
|
| }
|
|
|
| void ChromeBrowserMainPartsChromeos::PostDestroyThreads() {
|
| + // Destroy DBus services immediately after threads are stopped.
|
| + dbus_services_.reset();
|
| +
|
| ChromeBrowserMainPartsLinux::PostDestroyThreads();
|
| +
|
| // Destroy DeviceSettingsService after g_browser_process.
|
| DeviceSettingsService::Shutdown();
|
| }
|
|
|