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

Unified Diff: ppapi/native_client/src/trusted/plugin/service_runtime.cc

Issue 360743002: Pepper: SelLdrLauncherChrome cleanup. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 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 | « ppapi/native_client/src/trusted/plugin/service_runtime.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ppapi/native_client/src/trusted/plugin/service_runtime.cc
diff --git a/ppapi/native_client/src/trusted/plugin/service_runtime.cc b/ppapi/native_client/src/trusted/plugin/service_runtime.cc
index 12ab43122bf1e9397aa92f1b9ef88a0796489aa5..fbbd781df3d006fe4524b4be63cd1d8b84a77fc2 100644
--- a/ppapi/native_client/src/trusted/plugin/service_runtime.cc
+++ b/ppapi/native_client/src/trusted/plugin/service_runtime.cc
@@ -262,7 +262,8 @@ ServiceRuntime::ServiceRuntime(Plugin* plugin,
init_done_cb, crash_cb)),
start_sel_ldr_done_(false),
start_nexe_done_(false),
- nexe_started_ok_(false) {
+ nexe_started_ok_(false),
+ bootstrap_channel_(NACL_INVALID_HANDLE) {
NaClSrpcChannelInitialize(&command_channel_);
NaClXMutexCtor(&mu_);
NaClXCondVarCtor(&cond_);
@@ -272,6 +273,10 @@ bool ServiceRuntime::SetupCommandChannel() {
NaClLog(4, "ServiceRuntime::SetupCommand (this=%p, subprocess=%p)\n",
static_cast<void*>(this),
static_cast<void*>(subprocess_.get()));
+ // Set up the bootstrap channel in our subprocess so that we can establish
+ // SRPC.
+ subprocess_->set_channel(bootstrap_channel_);
+
if (uses_nonsfi_mode_) {
// In non-SFI mode, no SRPC is used. Just skips and returns success.
return true;
@@ -398,18 +403,20 @@ void ServiceRuntime::StartSelLdr(const SelLdrStartParams& params,
bool enable_dev_interfaces =
GetNaClInterface()->DevInterfacesEnabled(pp_instance_);
- tmp_subprocess->Start(pp_instance_,
- main_service_runtime_,
- params.url.c_str(),
- &params.file_info,
- params.uses_irt,
- params.uses_ppapi,
- uses_nonsfi_mode_,
- enable_dev_interfaces,
- params.enable_dyncode_syscalls,
- params.enable_exception_handling,
- params.enable_crash_throttling,
- callback);
+ GetNaClInterface()->LaunchSelLdr(
+ pp_instance_,
+ PP_FromBool(main_service_runtime_),
+ params.url.c_str(),
+ &params.file_info,
+ PP_FromBool(params.uses_irt),
+ PP_FromBool(params.uses_ppapi),
+ PP_FromBool(uses_nonsfi_mode_),
+ PP_FromBool(enable_dev_interfaces),
+ PP_FromBool(params.enable_dyncode_syscalls),
+ PP_FromBool(params.enable_exception_handling),
+ PP_FromBool(params.enable_crash_throttling),
+ &bootstrap_channel_,
+ callback.pp_completion_callback());
subprocess_.reset(tmp_subprocess.release());
}
« no previous file with comments | « ppapi/native_client/src/trusted/plugin/service_runtime.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698