| ... | ... | @@ -1352,7 +1352,7 @@ const MachODumper = struct { |
| 1352 | 1352 | var offset: u64 = 0; |
| 1353 | 1353 | var addend: i64 = 0; |
| 1354 | 1354 | |
| 1355 | | var name_buf: std.ArrayList(u8) = .init(ctx.gpa); |
| 1355 | var name_buf: std.io.Writer.Allocating = .init(ctx.gpa); |
| 1356 | 1356 | defer name_buf.deinit(); |
| 1357 | 1357 | |
| 1358 | 1358 | while (br.takeByte()) |byte| { |
| ... | ... | @@ -1380,9 +1380,8 @@ const MachODumper = struct { |
| 1380 | 1380 | }, |
| 1381 | 1381 | macho.BIND_OPCODE_SET_SYMBOL_TRAILING_FLAGS_IMM => { |
| 1382 | 1382 | name_buf.clearRetainingCapacity(); |
| 1383 | | if (true) @panic("TODO fix this"); |
| 1384 | | //try reader.readUntilDelimiterArrayList(&name_buf, 0, std.math.maxInt(u32)); |
| 1385 | | try name_buf.append(0); |
| 1383 | try br.streamDelimiterLimit(&name_buf, 0, .limited(std.math.maxInt(u32))); |
| 1384 | try name_buf.writeByte(0); |
| 1386 | 1385 | }, |
| 1387 | 1386 | macho.BIND_OPCODE_SET_ADDEND_SLEB => { |
| 1388 | 1387 | addend = try br.takeLeb128(i64); |
| ... | ... | @@ -1424,7 +1423,7 @@ const MachODumper = struct { |
| 1424 | 1423 | .addend = addend, |
| 1425 | 1424 | .tag = tag, |
| 1426 | 1425 | .ordinal = ordinal, |
| 1427 | | .name = try ctx.gpa.dupe(u8, name_buf.items), |
| 1426 | .name = try ctx.gpa.dupe(u8, name_buf.getWritten()), |
| 1428 | 1427 | }); |
| 1429 | 1428 | offset += skip + @sizeOf(u64) + add_addr; |
| 1430 | 1429 | } |