diff --git a/src/api/environment.cc b/src/api/environment.cc index 406455c7263573..7d4cf8068bec6a 100644 --- a/src/api/environment.cc +++ b/src/api/environment.cc @@ -265,8 +265,10 @@ void SetIsolateMiscHandlers(v8::Isolate* isolate, const IsolateSettings& s) { auto* allow_wasm_codegen_cb = s.allow_wasm_code_generation_callback ? s.allow_wasm_code_generation_callback : AllowWasmCodeGenerationCallback; isolate->SetAllowWasmCodeGenerationCallback(allow_wasm_codegen_cb); - isolate->SetModifyCodeGenerationFromStringsCallback( - ModifyCodeGenerationFromStrings); + + auto* modify_code_generation_from_strings_callback = s.modify_code_generation_from_strings_callback ? + s.modify_code_generation_from_strings_callback : ModifyCodeGenerationFromStrings; + isolate->SetModifyCodeGenerationFromStringsCallback(modify_code_generation_from_strings_callback); Mutex::ScopedLock lock(node::per_process::cli_options_mutex); if (per_process::cli_options->get_per_isolate_options() diff --git a/src/node.h b/src/node.h index 561af155561923..c2cd559ffb0c94 100644 --- a/src/node.h +++ b/src/node.h @@ -471,6 +471,8 @@ struct IsolateSettings { v8::PromiseRejectCallback promise_reject_callback = nullptr; v8::AllowWasmCodeGenerationCallback allow_wasm_code_generation_callback = nullptr; + v8::ModifyCodeGenerationFromStringsCallback2 + modify_code_generation_from_strings_callback = nullptr; }; // Overriding IsolateSettings may produce unexpected behavior