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 614b2e6405307e40187fc851a58dc7aa23e1de64..b044a6616504ad28200b6eb2dd2cdb9847fb128c 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(), |