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 1f14e388d26e590b75697fcb9c8e349c434f133e..5c647aaf71f733f4dc9e31c91f2a5e75d6b31a3d 100644 |
--- a/chrome/browser/chromeos/chrome_browser_main_chromeos.cc |
+++ b/chrome/browser/chromeos/chrome_browser_main_chromeos.cc |
@@ -198,9 +198,14 @@ namespace internal { |
class DBusServices { |
public: |
explicit DBusServices(const content::MainFunctionParams& parameters) { |
+ // Under mash, some D-Bus clients are owned by other processes. |
+ DBusThreadManager::ProcessMask process_mask = |
+ chrome::IsRunningInMash() ? DBusThreadManager::PROCESS_BROWSER |
+ : DBusThreadManager::PROCESS_ALL; |
+ |
// Initialize DBusThreadManager for the browser. This must be done after |
// the main message loop is started, as it uses the message loop. |
- DBusThreadManager::Initialize(); |
+ DBusThreadManager::Initialize(process_mask); |
bluez::BluezDBusManager::Initialize( |
DBusThreadManager::Get()->GetSystemBus(), |