summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos
diff options
context:
space:
mode:
authorhashimoto@chromium.org <hashimoto@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-10 04:43:37 +0000
committerhashimoto@chromium.org <hashimoto@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-10 04:43:37 +0000
commit3dcf0407ae4fb947301ffbb61760c79e3239eb97 (patch)
treee756b3165121e021ca227f0781447822f32abff2 /chrome/browser/chromeos
parenta2787eebf17e37baf342d622dbeabce319731455 (diff)
downloadchromium_src-3dcf0407ae4fb947301ffbb61760c79e3239eb97.zip
chromium_src-3dcf0407ae4fb947301ffbb61760c79e3239eb97.tar.gz
chromium_src-3dcf0407ae4fb947301ffbb61760c79e3239eb97.tar.bz2
Shutdown CrosLibrary before DBusThreadManager
BUG=chromium-os:26119 TEST=Open chrome://imageburner, press Ctrl+Shift+Q to quit, see the content of the log for the last session (can find in /var/log/ui/) and ensure there is no crash. Review URL: http://codereview.chromium.org/9373020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121405 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos')
-rw-r--r--chrome/browser/chromeos/chrome_browser_main_chromeos.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/chrome/browser/chromeos/chrome_browser_main_chromeos.cc b/chrome/browser/chromeos/chrome_browser_main_chromeos.cc
index 6a8e96a..4874b83 100644
--- a/chrome/browser/chromeos/chrome_browser_main_chromeos.cc
+++ b/chrome/browser/chromeos/chrome_browser_main_chromeos.cc
@@ -227,11 +227,16 @@ ChromeBrowserMainPartsChromeos::~ChromeBrowserMainPartsChromeos() {
chromeos::disks::DiskMountManager::Shutdown();
- chromeos::DBusThreadManager::Shutdown();
-
+ // CrosLibrary is shut down before DBusThreadManager even though the former
+ // is initialized before the latter becuase some of its libraries depend
+ // on DBus clients.
+ // TODO(hashimoto): Resolve this situation by removing CrosLibrary.
+ // (crosbug.com/26160)
if (!parameters().ui_task && chromeos::CrosLibrary::Get())
chromeos::CrosLibrary::Shutdown();
+ chromeos::DBusThreadManager::Shutdown();
+
// To be precise, logout (browser shutdown) is not yet done, but the
// remaining work is negligible, hence we say LogoutDone here.
chromeos::BootTimesLoader::Get()->AddLogoutTimeMarker("LogoutDone",