authorgravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2021-09-09 16:55:56+02:00
committergravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2021-09-09 16:55:56+02:00
log56fdada577d5d7f871bed8e5ae74e395291d4140
treef4ae4765f01c45ade33315811ec1133b517ce7a7
parent1efdb137d14058f3c428a001838b963de16694ea

macho: properly adjust section sizes


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

src/link/MachO.zig+9-1
......@@ -2667,8 +2667,16 @@ fn parseTextBlocks(self: *MachO) !void {
26672667 metadata.size,
26682668 metadata.alignment,
26692669 });
2670
2671 const sect_size = if (self.blocks.get(match)) |last| blk: {
2672 const last_atom_sym = self.locals.items[last.local_sym_index];
2673 break :blk last_atom_sym.n_value + last.size - sect.addr;
2674 } else 0;
2675
26702676 sect.@"align" = math.max(sect.@"align", metadata.alignment);
2671 try self.growSection(match, @intCast(u32, metadata.size));
2677 const needed_size = @intCast(u32, metadata.size + sect_size);
2678 try self.growSection(match, needed_size);
2679 sect.size = needed_size;
26722680
26732681 var base_vaddr = if (self.blocks.get(match)) |last| blk: {
26742682 const last_atom_sym = self.locals.items[last.local_sym_index];