zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 22b39f034b495176784f7ca295cf61c285958abe (tree)
parent 2cb6db22193acc802ff38f1cc4576ac1ee3f94fa
Author: Jakub Konka <kubkon@jakubkonka.com>
Date:   Fri, 23 Dec 2022 14:35:45 +0100

macho+zld: properly deinit code signature object

Diffstat:
Msrc/link/MachO.zig | 3++-
Msrc/link/MachO/zld.zig | 3++-
2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/link/MachO.zig b/src/link/MachO.zig @@ -574,11 +574,12 @@ pub fn flushModule(self: *MachO, comp: *Compilation, prog_node: *std.Progress.No var codesig = CodeSignature.init(self.page_size); codesig.code_directory.ident = self.base.options.emit.?.sub_path; if (self.base.options.entitlements) |path| { - try codesig.addEntitlements(arena, path); + try codesig.addEntitlements(self.base.allocator, path); } try self.writeCodeSignaturePadding(&codesig); break :blk codesig; } else null; + defer if (codesig) |*csig| csig.deinit(self.base.allocator); // Write load commands var lc_buffer = std.ArrayList(u8).init(arena); diff --git a/src/link/MachO/zld.zig b/src/link/MachO/zld.zig @@ -4115,11 +4115,12 @@ pub fn linkWithZld(macho_file: *MachO, comp: *Compilation, prog_node: *std.Progr var codesig = CodeSignature.init(page_size); codesig.code_directory.ident = fs.path.basename(full_out_path); if (options.entitlements) |path| { - try codesig.addEntitlements(arena, path); + try codesig.addEntitlements(zld.gpa, path); } try zld.writeCodeSignaturePadding(&codesig); break :blk codesig; } else null; + defer if (codesig) |*csig| csig.deinit(zld.gpa); // Write load commands var lc_buffer = std.ArrayList(u8).init(arena);