Index: content/browser/renderer_host/render_process_host_impl.cc |
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc |
index d5aef3d4136fcfc77a0cd7b50c11f47d46b4179f..9de21b67af5683aa254464189cccb151d921d9ab 100644 |
--- a/content/browser/renderer_host/render_process_host_impl.cc |
+++ b/content/browser/renderer_host/render_process_host_impl.cc |
@@ -676,7 +676,8 @@ void RenderProcessHostImpl::EarlyZygoteLaunch() { |
RenderProcessHostImpl::RenderProcessHostImpl( |
BrowserContext* browser_context, |
StoragePartitionImpl* storage_partition_impl, |
- bool is_for_guests_only) |
+ bool is_for_guests_only, |
+ int child_process_param_id) |
: fast_shutdown_started_(false), |
deleting_soon_(false), |
#ifndef NDEBUG |
@@ -690,6 +691,7 @@ RenderProcessHostImpl::RenderProcessHostImpl( |
visible_widgets_(0), |
is_process_backgrounded_(false), |
id_(ChildProcessHostImpl::GenerateChildProcessUniqueId()), |
+ child_process_param_id_(child_process_param_id), |
browser_context_(browser_context), |
storage_partition_impl_(storage_partition_impl), |
sudden_termination_allowed_(true), |
@@ -918,10 +920,12 @@ bool RenderProcessHostImpl::Init() { |
// Spawn the child process asynchronously to avoid blocking the UI thread. |
// As long as there's no renderer prefix, we can use the zygote process |
// at this stage. |
+ constexpr bool terminate_on_shutdown = true; |
child_process_launcher_.reset(new ChildProcessLauncher( |
base::MakeUnique<RendererSandboxedProcessLauncherDelegate>(), |
std::move(cmd_line), GetID(), this, std::move(pending_connection_), |
- base::Bind(&RenderProcessHostImpl::OnMojoError, id_))); |
+ base::Bind(&RenderProcessHostImpl::OnMojoError, id_), |
+ terminate_on_shutdown, child_process_param_id_)); |
channel_->Pause(); |
fast_shutdown_started_ = false; |