authorgravatar for aleksey.kladov@gmail.comAlex Kladov <aleksey.kladov@gmail.com> 2025-01-30 12:01:53+00:00
committergravatar for mail@isaacfreund.comIsaac Freund <mail@isaacfreund.com> 2025-01-31 17:57:39+01:00
log4de2b1ea65e6b54cedfe56268a8bf8e9446addb0
tree7114caa4609af2e0fa942eceb34f6354102a7c34
parentc104e864429e1b62aa68423171dc6d94d3f4ee0e

std: don't leak a process in Child.run in case of an error

Closes: #22433

1 files changed, 4 insertions(+), 1 deletions(-)

lib/std/process/Child.zig+4-1
......@@ -428,12 +428,15 @@ pub fn run(args: struct {
428428 }
429429
430430 try child.spawn();
431 errdefer {
432 _ = child.kill() catch {};
433 }
431434 try child.collectOutput(&stdout, &stderr, args.max_output_bytes);
432435
433436 return RunResult{
434 .term = try child.wait(),
435437 .stdout = try stdout.toOwnedSlice(),
436438 .stderr = try stderr.toOwnedSlice(),
439 .term = try child.wait(),
437440 };
438441}
439442