Skip to content

Commit

Permalink
src: allow optional Isolate termination in node::Stop()
Browse files Browse the repository at this point in the history
  • Loading branch information
codebytere committed Apr 14, 2023
1 parent 3df2b38 commit 1705615
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 88 deletions.
1 change: 0 additions & 1 deletion patches/node/.patches
Expand Up @@ -29,7 +29,6 @@ api_pass_oomdetails_to_oomerrorcallback.patch
fix_expose_lookupandcompile_with_parameters.patch
fix_prevent_changing_functiontemplateinfo_after_publish.patch
enable_crashpad_linux_node_processes.patch
src_allow_optional_isolation_termination_in_node.patch
test_mark_cpu_prof_tests_as_flaky_in_electron.patch
lib_fix_broadcastchannel_initialization_location.patch
fix_adapt_debugger_tests_for_upstream_v8_changes.patch

This file was deleted.

2 changes: 1 addition & 1 deletion shell/app/node_main.cc
Expand Up @@ -266,7 +266,7 @@ int NodeMain(int argc, char* argv[]) {

node::ResetStdio();

node::Stop(env, false);
node::Stop(env, node::StopFlags::kDoNotTerminateIsolate);

node::FreeEnvironment(env);
node::FreeIsolateData(isolate_data);
Expand Down
2 changes: 1 addition & 1 deletion shell/browser/electron_browser_main_parts.cc
Expand Up @@ -625,7 +625,7 @@ void ElectronBrowserMainParts::PostMainMessageLoopRun() {
// invoke Node/V8 APIs inside them.
node_env_->env()->set_trace_sync_io(false);
js_env_->DestroyMicrotasksRunner();
node::Stop(node_env_->env(), false);
node::Stop(node_env_->env(), node::StopFlags::kDoNotTerminateIsolate);
node_env_.reset();

auto default_context_key = ElectronBrowserContext::PartitionKey("", false);
Expand Down
20 changes: 10 additions & 10 deletions shell/services/node/node_service.cc
Expand Up @@ -33,7 +33,7 @@ NodeService::~NodeService() {
if (!node_env_stopped_) {
node_env_->env()->set_trace_sync_io(false);
js_env_->DestroyMicrotasksRunner();
node::Stop(node_env_->env(), false);
node::Stop(node_env_->env(), node::StopFlags::kDoNotTerminateIsolate);
}
}

Expand Down Expand Up @@ -63,15 +63,15 @@ void NodeService::Initialize(node::mojom::NodeServiceParamsPtr params) {
params->args, params->exec_args);
node_env_ = std::make_unique<NodeEnvironment>(env);

node::SetProcessExitHandler(env,
[this](node::Environment* env, int exit_code) {
// Destroy node platform.
env->set_trace_sync_io(false);
js_env_->DestroyMicrotasksRunner();
node::Stop(env, false);
node_env_stopped_ = true;
receiver_.ResetWithReason(exit_code, "");
});
node::SetProcessExitHandler(
env, [this](node::Environment* env, int exit_code) {
// Destroy node platform.
env->set_trace_sync_io(false);
js_env_->DestroyMicrotasksRunner();
node::Stop(env, node::StopFlags::kDoNotTerminateIsolate);
node_env_stopped_ = true;
receiver_.ResetWithReason(exit_code, "");
});

env->set_trace_sync_io(env->options()->trace_sync_io);

Expand Down

0 comments on commit 1705615

Please sign in to comment.