Index: remoting/host/win/unprivileged_process_delegate.cc |
diff --git a/remoting/host/win/unprivileged_process_delegate.cc b/remoting/host/win/unprivileged_process_delegate.cc |
index c9f00415107d6b597d39c84d6c03217fd19a321b..5c0a6b54d8703ca351b8c0460b605d9605b3a1e7 100644 |
--- a/remoting/host/win/unprivileged_process_delegate.cc |
+++ b/remoting/host/win/unprivileged_process_delegate.cc |
@@ -26,6 +26,7 @@ |
#include "ipc/ipc_channel_proxy.h" |
#include "ipc/ipc_message.h" |
#include "mojo/edk/embedder/embedder.h" |
+#include "mojo/edk/embedder/pending_process_connection.h" |
#include "mojo/edk/embedder/platform_channel_pair.h" |
#include "remoting/base/typed_buffer.h" |
#include "remoting/host/switches.h" |
@@ -283,13 +284,10 @@ void UnprivilegedProcessDelegate::LaunchProcess( |
return; |
} |
- const std::string mojo_child_token = mojo::edk::GenerateRandomToken(); |
- const std::string mojo_message_pipe_token = mojo::edk::GenerateRandomToken(); |
- |
+ mojo::edk::PendingProcessConnection process; |
+ std::string mojo_message_pipe_token; |
std::unique_ptr<IPC::ChannelProxy> server = IPC::ChannelProxy::Create( |
- mojo::edk::CreateParentMessagePipe(mojo_message_pipe_token, |
- mojo_child_token) |
- .release(), |
+ process.CreateMessagePipe(&mojo_message_pipe_token).release(), |
IPC::Channel::MODE_SERVER, this, io_task_runner_); |
base::CommandLine command_line(target_command_->argv()); |
command_line.AppendSwitchASCII(kMojoPipeToken, mojo_message_pipe_token); |
@@ -310,12 +308,10 @@ void UnprivilegedProcessDelegate::LaunchProcess( |
token.Get(), &process_attributes, &thread_attributes, |
handles_to_inherit, /* creation_flags= */ 0, |
/* thread_attributes= */ nullptr, &worker_process, &worker_thread)) { |
- mojo::edk::ChildProcessLaunchFailed(mojo_child_token); |
ReportFatalError(); |
return; |
} |
- mojo::edk::ChildProcessLaunched( |
- worker_process.Get(), mojo_channel.PassServerHandle(), mojo_child_token); |
+ process.Connect(worker_process.Get(), mojo_channel.PassServerHandle()); |
channel_ = std::move(server); |