fix: avoid using v8 on Isolate termination (#35766)

* fix: avoid using v8 on Isolate termination

* chore: refactor for review

---------

Co-authored-by: electron-patch-conflict-fixer[bot] <83340002+electron-patch-conflict-fixer[bot]@users.noreply.github.com>
This commit is contained in:
Shelley Vohr 2023-02-09 08:48:49 +00:00 committed by GitHub
parent 8dc98aeeae
commit 478ce96914
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 121 additions and 108 deletions

View file

@ -226,7 +226,8 @@ int NodeMain(int argc, char* argv[]) {
uint64_t env_flags = node::EnvironmentFlags::kDefaultFlags |
node::EnvironmentFlags::kHideConsoleWindows;
env = node::CreateEnvironment(
isolate_data, gin_env.context(), result->args(), result->exec_args(),
isolate_data, isolate->GetCurrentContext(), result->args(),
result->exec_args(),
static_cast<node::EnvironmentFlags::Flags>(env_flags));
CHECK_NE(nullptr, env);
@ -293,7 +294,8 @@ int NodeMain(int argc, char* argv[]) {
node::ResetStdio();
node::Stop(env);
node::Stop(env, false);
node::FreeEnvironment(env);
node::FreeIsolateData(isolate_data);
}