libuv: win/spawn: allow exception through to OS

Backport changes from libuv v2 commit `da343e6237` (win: allow fatal
errors to trigger WER, 2023-01-17).

Issue: #20115
This commit is contained in:
Dylan Snelgrove
2024-10-16 23:46:16 +00:00
committed by Brad King
parent 65c1147e6c
commit 728f40d4bf

View File

@@ -90,7 +90,6 @@ static void uv__init_global_job_handle(void) {
info.BasicLimitInformation.LimitFlags = info.BasicLimitInformation.LimitFlags =
JOB_OBJECT_LIMIT_BREAKAWAY_OK | JOB_OBJECT_LIMIT_BREAKAWAY_OK |
JOB_OBJECT_LIMIT_SILENT_BREAKAWAY_OK | JOB_OBJECT_LIMIT_SILENT_BREAKAWAY_OK |
JOB_OBJECT_LIMIT_DIE_ON_UNHANDLED_EXCEPTION |
JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE; JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE;
uv_global_job_handle_ = CreateJobObjectW(&attr, NULL); uv_global_job_handle_ = CreateJobObjectW(&attr, NULL);
@@ -1097,7 +1096,7 @@ int uv_spawn(uv_loop_t* loop,
startup.hStdOutput = uv__stdio_handle(process->child_stdio_buffer, 1); startup.hStdOutput = uv__stdio_handle(process->child_stdio_buffer, 1);
startup.hStdError = uv__stdio_handle(process->child_stdio_buffer, 2); startup.hStdError = uv__stdio_handle(process->child_stdio_buffer, 2);
process_flags = CREATE_UNICODE_ENVIRONMENT; process_flags = CREATE_UNICODE_ENVIRONMENT | CREATE_DEFAULT_ERROR_MODE;
if ((options->flags & UV_PROCESS_WINDOWS_HIDE_CONSOLE) || if ((options->flags & UV_PROCESS_WINDOWS_HIDE_CONSOLE) ||
(options->flags & UV_PROCESS_WINDOWS_HIDE)) { (options->flags & UV_PROCESS_WINDOWS_HIDE)) {