| ... | ... | @@ -213,10 +213,11 @@ pub const ArSymtab = struct { |
| 213 | 213 | } |
| 214 | 214 | |
| 215 | 215 | pub fn write(ar: ArSymtab, format: Format, macho_file: *MachO, writer: anytype) !void { |
| 216 | const ptr_width = ptrWidth(format); |
| 216 | 217 | // Header |
| 217 | 218 | try writeHeader(SYMDEF, ar.size(format), format, writer); |
| 218 | 219 | // Symtab size |
| 219 | | try writeInt(format, ar.entries.items.len * 2, writer); |
| 220 | try writeInt(format, ar.entries.items.len * 2 * ptr_width, writer); |
| 220 | 221 | // Symtab entries |
| 221 | 222 | for (ar.entries.items) |entry| { |
| 222 | 223 | const file_off = switch (macho_file.getFile(entry.file).?) { |
| ... | ... | @@ -230,7 +231,7 @@ pub const ArSymtab = struct { |
| 230 | 231 | try writeInt(format, file_off, writer); |
| 231 | 232 | } |
| 232 | 233 | // Strtab size |
| 233 | | const strtab_size = mem.alignForward(u64, ar.strtab.buffer.items.len, ptrWidth(format)); |
| 234 | const strtab_size = mem.alignForward(u64, ar.strtab.buffer.items.len, ptr_width); |
| 234 | 235 | const padding = strtab_size - ar.strtab.buffer.items.len; |
| 235 | 236 | try writeInt(format, strtab_size, writer); |
| 236 | 237 | // Strtab |