Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(890)

Unified Diff: mojo/runner/host/child_process_host.cc

Issue 1554443003: Stop linking in the old Mojo EDK. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: merge and fix new flaky test Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « mojo/runner/host/child_process_host.h ('k') | mojo/runner/host/child_process_host_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/runner/host/child_process_host.cc
diff --git a/mojo/runner/host/child_process_host.cc b/mojo/runner/host/child_process_host.cc
index f8777db58e3ff2c64cd5062f8a57815f1e81a59d..06368eba810662ab589e9c1b367c9b78444e48cb 100644
--- a/mojo/runner/host/child_process_host.cc
+++ b/mojo/runner/host/child_process_host.cc
@@ -18,10 +18,10 @@
#include "base/process/launch.h"
#include "base/task_runner.h"
#include "base/thread_task_runner_handle.h"
+#include "mojo/edk/embedder/embedder.h"
#include "mojo/public/cpp/bindings/interface_ptr_info.h"
#include "mojo/public/cpp/system/core.h"
#include "mojo/runner/host/switches.h"
-#include "third_party/mojo/src/mojo/edk/embedder/embedder.h"
#if defined(OS_LINUX) && !defined(OS_ANDROID)
#include "sandbox/linux/services/namespace_sandbox.h"
@@ -40,22 +40,17 @@ ChildProcessHost::ChildProcessHost(base::TaskRunner* launch_process_runner,
: launch_process_runner_(launch_process_runner),
start_sandboxed_(start_sandboxed),
app_path_(app_path),
- channel_info_(nullptr),
start_child_process_event_(false, false),
weak_factory_(this) {
- if (base::CommandLine::ForCurrentProcess()->HasSwitch("use-new-edk"))
- serializer_platform_channel_pair_.reset(new edk::PlatformChannelPair(true));
+ serializer_platform_channel_pair_.reset(new edk::PlatformChannelPair(true));
- child_message_pipe_ = embedder::CreateChannel(
- platform_channel_pair_.PassServerHandle(),
- base::Bind(&ChildProcessHost::DidCreateChannel, base::Unretained(this)),
- base::ThreadTaskRunnerHandle::Get());
+ child_message_pipe_ = edk::CreateMessagePipe(
+ platform_channel_pair_.PassServerHandle());
}
ChildProcessHost::ChildProcessHost(ScopedHandle channel)
: launch_process_runner_(nullptr),
start_sandboxed_(false),
- channel_info_(nullptr),
start_child_process_event_(false, false),
weak_factory_(this) {
CHECK(channel.is_valid());
@@ -73,20 +68,18 @@ void ChildProcessHost::Start(
DCHECK(!child_process_.IsValid());
DCHECK(child_message_pipe_.is_valid());
- if (base::CommandLine::ForCurrentProcess()->HasSwitch("use-new-edk")) {
- std::string client_handle_as_string =
- serializer_platform_channel_pair_
- ->PrepareToPassClientHandleToChildProcessAsString(
- &handle_passing_info_);
- // We can't send the MP for the token serializer implementation as a
- // platform handle, because that would require the other side to use the
- // token initializer itself! So instead we send it as a string.
- MojoResult rv = MojoWriteMessage(
- child_message_pipe_.get().value(), client_handle_as_string.c_str(),
- static_cast<uint32_t>(client_handle_as_string.size()), nullptr, 0,
- MOJO_WRITE_MESSAGE_FLAG_NONE);
- DCHECK_EQ(rv, MOJO_RESULT_OK);
- }
+ std::string client_handle_as_string =
+ serializer_platform_channel_pair_
+ ->PrepareToPassClientHandleToChildProcessAsString(
+ &handle_passing_info_);
+ // We can't send the MP for the token serializer implementation as a
+ // platform handle, because that would require the other side to use the
+ // token initializer itself! So instead we send it as a string.
+ MojoResult rv = MojoWriteMessage(
+ child_message_pipe_.get().value(), client_handle_as_string.c_str(),
+ static_cast<uint32_t>(client_handle_as_string.size()), nullptr, 0,
+ MOJO_WRITE_MESSAGE_FLAG_NONE);
+ DCHECK_EQ(rv, MOJO_RESULT_OK);
controller_.Bind(
InterfacePtrInfo<ChildController>(std::move(child_message_pipe_), 0u));
@@ -212,11 +205,9 @@ void ChildProcessHost::DoLaunch() {
platform_channel_pair_.ChildProcessLaunched();
if (serializer_platform_channel_pair_.get()) {
serializer_platform_channel_pair_->ChildProcessLaunched();
- mojo::embedder::ChildProcessLaunched(
+ mojo::edk::ChildProcessLaunched(
child_process_.Handle(),
- mojo::embedder::ScopedPlatformHandle(mojo::embedder::PlatformHandle(
- serializer_platform_channel_pair_->PassServerHandle().release().
- handle)));
+ serializer_platform_channel_pair_->PassServerHandle());
}
}
start_child_process_event_.Signal();
@@ -230,13 +221,5 @@ void ChildProcessHost::AppCompleted(int32_t result) {
}
}
-void ChildProcessHost::DidCreateChannel(embedder::ChannelInfo* channel_info) {
- DVLOG(2) << "AppChildProcessHost::DidCreateChannel()";
-
- DCHECK(channel_info ||
- base::CommandLine::ForCurrentProcess()->HasSwitch("use-new-edk"));
- channel_info_ = channel_info;
-}
-
} // namespace runner
} // namespace mojo
« no previous file with comments | « mojo/runner/host/child_process_host.h ('k') | mojo/runner/host/child_process_host_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698