authorgravatar for 16590917+llogick@users.noreply.github.comllogick <16590917+llogick@users.noreply.github.com> 2026-09-19 18:04:26-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-09-21 07:51:39+02:00
logabe2216699d46be45b32215733247db0e3a5e620
treec8be85374b53997a973dc464f964094e969e296c
parent6f2109384d277ad8dff50cf7a8df1a87f45a6695

Maker: Fmt (step): add a deinit method

fixes Maker leaking Fmt's argv

2 files changed, 5 insertions(+), 2 deletions(-)

lib/compiler/Maker/Step.zig+1-2
...@@ -321,7 +321,6 @@ pub fn deinit(step: *Step, gpa: Allocator) void {...@@ -321,7 +321,6 @@ pub fn deinit(step: *Step, gpa: Allocator) void {
321 .config_header,321 .config_header,
322 .fail,322 .fail,
323 .find_program,323 .find_program,
324 .fmt,
325 .install_artifact,324 .install_artifact,
326 .install_dir,325 .install_dir,
327 .install_file,326 .install_file,
...@@ -332,7 +331,7 @@ pub fn deinit(step: *Step, gpa: Allocator) void {...@@ -332,7 +331,7 @@ pub fn deinit(step: *Step, gpa: Allocator) void {
332 .update_source_files,331 .update_source_files,
333 .write_file,332 .write_file,
334 => {},333 => {},
335 .run => |*extended| extended.deinit(gpa),334 inline .fmt, .run => |*extended| extended.deinit(gpa),
336 }335 }
337 step.* = undefined;336 step.* = undefined;
338}337}
lib/compiler/Maker/Step/Fmt.zig+4
...@@ -63,3 +63,7 @@ pub fn make(...@@ -63,3 +63,7 @@ pub fn make(
63 };63 };
64 try step.handleChildProcessTerm(maker, run_result.term);64 try step.handleChildProcessTerm(maker, run_result.term);
65}65}
66
67pub fn deinit(fmt: *Fmt, gpa: std.mem.Allocator) void {
68 fmt.argv.deinit(gpa);
69}