From c5d5c28a79888c1b4152efff09f93fa43bdf9208 Mon Sep 17 00:00:00 2001 From: "trop[bot]" <37223003+trop[bot]@users.noreply.github.com> Date: Mon, 10 Jan 2022 07:55:06 -0800 Subject: [PATCH] fix: Don't create console window when creating process (#32379) * fix: Don't create console window when creating process * Update patches/node/fix_don_t_create_console_window_when_creating_process.patch Co-authored-by: Robo * Remove extra line in description * Update .patches Co-authored-by: Raymond Zhao Co-authored-by: Raymond Zhao Co-authored-by: Robo --- patches/node/.patches | 1 + ...console_window_when_creating_process.patch | 25 +++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 patches/node/fix_don_t_create_console_window_when_creating_process.patch diff --git a/patches/node/.patches b/patches/node/.patches index 859927b9153ac..f20ee20945ca0 100644 --- a/patches/node/.patches +++ b/patches/node/.patches @@ -29,3 +29,4 @@ fix_event_with_invalid_timestamp_in_trace_log.patch test_fix_test-datetime-change-notify_after_daylight_change.patch test_add_fixture_trim_option.patch fix_crash_caused_by_gethostnamew_on_windows_7.patch +fix_don_t_create_console_window_when_creating_process.patch diff --git a/patches/node/fix_don_t_create_console_window_when_creating_process.patch b/patches/node/fix_don_t_create_console_window_when_creating_process.patch new file mode 100644 index 0000000000000..2ae896f558c86 --- /dev/null +++ b/patches/node/fix_don_t_create_console_window_when_creating_process.patch @@ -0,0 +1,25 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Raymond Zhao +Date: Tue, 4 Jan 2022 16:11:41 -0800 +Subject: fix: Don't create console window when creating process + +This patch prevents console windows from being created during +execSync calls, or spawnSync calls where shell is true. Otherwise, +Windows users will see command prompts pop up for those calls. + +The patch has been upstreamed at https://github.com/nodejs/node/pull/41412. + +diff --git a/src/spawn_sync.cc b/src/spawn_sync.cc +index 1141aceae984fba6ed07cd272a79d4007b9b03fe..afd08519d7f8974adff4060513f6160519a0b6b3 100644 +--- a/src/spawn_sync.cc ++++ b/src/spawn_sync.cc +@@ -810,6 +810,9 @@ Maybe SyncProcessRunner::ParseOptions(Local js_value) { + if (js_win_hide->BooleanValue(isolate)) + uv_process_options_.flags |= UV_PROCESS_WINDOWS_HIDE; + ++ if (env()->hide_console_windows()) ++ uv_process_options_.flags |= UV_PROCESS_WINDOWS_HIDE_CONSOLE; ++ + Local js_wva = + js_options->Get(context, env()->windows_verbatim_arguments_string()) + .ToLocalChecked();