Index: chrome/browser/chrome_browser_main_linux.cc |
diff --git a/chrome/browser/chrome_browser_main_linux.cc b/chrome/browser/chrome_browser_main_linux.cc |
index 24b37c7c1e4007e867590f83fb8a95d48901b71e..1090f35020f4e376d61f71858172b14d23899b84 100644 |
--- a/chrome/browser/chrome_browser_main_linux.cc |
+++ b/chrome/browser/chrome_browser_main_linux.cc |
@@ -10,6 +10,8 @@ |
#include "chrome/grit/chromium_strings.h" |
#include "components/crash/content/app/breakpad_linux.h" |
#include "components/metrics/metrics_service.h" |
+#include "device/bluetooth/dbus/bluez_dbus_manager.h" |
+#include "device/bluetooth/dbus/dbus_thread_manager_linux.h" |
#include "media/audio/audio_manager.h" |
#include "ui/base/l10n/l10n_util.h" |
@@ -62,3 +64,22 @@ void ChromeBrowserMainPartsLinux::PostProfileInit() { |
g_browser_process->metrics_service()->RecordBreakpadRegistration( |
breakpad::IsCrashReporterEnabled()); |
} |
+ |
+void ChromeBrowserMainPartsLinux::PostMainMessageLoopStart() { |
+#if !defined(OS_CHROMEOS) |
+ bluez::DBusThreadManagerLinux::Initialize(); |
+ bluez::BluezDBusManager::Initialize( |
+ bluez::DBusThreadManagerLinux::Get()->GetSystemBus(), false); |
+#endif |
+ |
+ ChromeBrowserMainPartsPosix::PostMainMessageLoopStart(); |
+} |
+ |
+void ChromeBrowserMainPartsLinux::PostDestroyThreads() { |
+#if !defined(OS_CHROMEOS) |
+ bluez::BluezDBusManager::Shutdown(); |
+ bluez::DBusThreadManagerLinux::Shutdown(); |
+#endif |
+ |
+ ChromeBrowserMainPartsPosix::PostDestroyThreads(); |
+} |