aboutsummaryrefslogtreecommitdiff
path: root/lib/std/Build/Step/CheckObject.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2025-07-01 08:44:26 -0700
committerAndrew Kelley <andrew@ziglang.org>2025-07-07 22:43:52 -0700
commitd6ac04c47811f162ca662f43d3c93a5dc0dcce86 (patch)
tree45ff48223b0c35171f444007b05063cf5eee792f /lib/std/Build/Step/CheckObject.zig
parent87f32bec2624784e06f5fbd5a9b99c5719154c30 (diff)
downloadzig-d6ac04c47811f162ca662f43d3c93a5dc0dcce86.tar.gz
zig-d6ac04c47811f162ca662f43d3c93a5dc0dcce86.zip
std.Build.Step.CheckObject: fix the TODO
Diffstat (limited to 'lib/std/Build/Step/CheckObject.zig')
-rw-r--r--lib/std/Build/Step/CheckObject.zig9
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/std/Build/Step/CheckObject.zig b/lib/std/Build/Step/CheckObject.zig
index 96fa443b1e..cc576e6410 100644
--- a/lib/std/Build/Step/CheckObject.zig
+++ b/lib/std/Build/Step/CheckObject.zig
@@ -1352,7 +1352,7 @@ const MachODumper = struct {
var offset: u64 = 0;
var addend: i64 = 0;
- var name_buf: std.ArrayList(u8) = .init(ctx.gpa);
+ var name_buf: std.io.Writer.Allocating = .init(ctx.gpa);
defer name_buf.deinit();
while (br.takeByte()) |byte| {
@@ -1380,9 +1380,8 @@ const MachODumper = struct {
},
macho.BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM => {
name_buf.clearRetainingCapacity();
- if (true) @panic("TODO fix this");
- //try reader.readUntilDelimiterArrayList(&name_buf, 0, std.math.maxInt(u32));
- try name_buf.append(0);
+ try br.streamDelimiterLimit(&name_buf, 0, .limited(std.math.maxInt(u32)));
+ try name_buf.writeByte(0);
},
macho.BIND_OPCODE_SET_ADDEND_SLEB => {
addend = try br.takeLeb128(i64);
@@ -1424,7 +1423,7 @@ const MachODumper = struct {
.addend = addend,
.tag = tag,
.ordinal = ordinal,
- .name = try ctx.gpa.dupe(u8, name_buf.items),
+ .name = try ctx.gpa.dupe(u8, name_buf.getWritten()),
});
offset += skip + @sizeOf(u64) + add_addr;
}