authorgravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2024-02-07 23:25:15+01:00
committergravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2024-02-07 23:25:15+01:00
log272fc2df2e0ba79866ff56bacacece2f60dec10b
tree9c8fb89568dcf5fe128a8044153e1af9a9c132c4
parent114518c6b0361fccef34a07d20c13f434bce1ef7

macho: use preadAll to read in object files when emitting archive


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

src/link/MachO/Object.zig+3-1
...@@ -1332,8 +1332,10 @@ pub fn writeAr(self: Object, ar_format: Archive.Format, macho_file: *MachO, writ...@@ -1332,8 +1332,10 @@ pub fn writeAr(self: Object, ar_format: Archive.Format, macho_file: *MachO, writ
1332 const file = macho_file.getFileHandle(self.file_handle);1332 const file = macho_file.getFileHandle(self.file_handle);
1333 // TODO try using copyRangeAll1333 // TODO try using copyRangeAll
1334 const gpa = macho_file.base.comp.gpa;1334 const gpa = macho_file.base.comp.gpa;
1335 const data = try file.readToEndAlloc(gpa, size);1335 const data = try gpa.alloc(u8, size);
1336 defer gpa.free(data);1336 defer gpa.free(data);
1337 const amt = try file.preadAll(data, 0);
1338 if (amt != size) return error.InputOutput;
1337 try writer.writeAll(data);1339 try writer.writeAll(data);
1338}1340}
13391341