From ca1d03fe77b8f173870804580b868568c1d61fbd Mon Sep 17 00:00:00 2001 From: Jakub Konka Date: Sat, 19 Dec 2020 19:44:13 +0100 Subject: [PATCH] macho: fix findFreeSpace start value --- src/link/MachO.zig | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/link/MachO.zig b/src/link/MachO.zig index 653811a557..7bff0e88a1 100644 --- a/src/link/MachO.zig +++ b/src/link/MachO.zig @@ -1739,7 +1739,10 @@ fn detectAllocCollision(self: *MachO, segment: *const SegmentCommand, start: u64 } fn findFreeSpace(self: *MachO, segment: *const SegmentCommand, object_size: u64, min_alignment: u16) u64 { - var start: u64 = if (parseAndCmpName(&segment.inner.segname, "__TEXT")) self.header_pad else 0; + var start: u64 = if (parseAndCmpName(&segment.inner.segname, "__TEXT")) + self.header_pad + else + segment.inner.fileoff; while (self.detectAllocCollision(segment, start, object_size)) |item_end| { start = mem.alignForwardGeneric(u64, item_end, min_alignment); }