| Index: mojo/shell/runner/host/child_process_host.cc
|
| diff --git a/mojo/shell/runner/host/child_process_host.cc b/mojo/shell/runner/host/child_process_host.cc
|
| index f887dbd4adb9a321ab4ee724ed671b70bc92da68..19a5161dccb54a269ff6fae0d899957d57040ad2 100644
|
| --- a/mojo/shell/runner/host/child_process_host.cc
|
| +++ b/mojo/shell/runner/host/child_process_host.cc
|
| @@ -16,6 +16,7 @@
|
| #include "base/message_loop/message_loop.h"
|
| #include "base/process/kill.h"
|
| #include "base/process/launch.h"
|
| +#include "base/synchronization/lock.h"
|
| #include "base/task_runner.h"
|
| #include "base/thread_task_runner_handle.h"
|
| #include "mojo/edk/embedder/embedder.h"
|
| @@ -33,6 +34,10 @@
|
| #include "base/win/windows_version.h"
|
| #endif
|
|
|
| +#if defined(OS_MACOSX)
|
| +#include "mojo/shell/runner/host/mach_broker.h"
|
| +#endif
|
| +
|
| namespace mojo {
|
| namespace shell {
|
|
|
| @@ -179,7 +184,16 @@ void ChildProcessHost::DoLaunch(
|
| }
|
| } else
|
| #endif
|
| + {
|
| +#if defined(OS_MACOSX)
|
| + MachBroker* mach_broker = MachBroker::GetInstance();
|
| + base::AutoLock locker(mach_broker->GetLock());
|
| +#endif
|
| child_process_ = base::LaunchProcess(*child_command_line, options);
|
| +#if defined(OS_MACOSX)
|
| + mach_broker->ExpectPid(child_process_.Handle());
|
| +#endif
|
| + }
|
|
|
| if (child_process_.IsValid()) {
|
| if (mojo_ipc_channel_.get()) {
|
|
|