my code is based on the extract function at line 582 of zip.zig:
const SeekableStream = @TypeOf(ss);
var iter = try std.zip.Iterator(SeekableStream).init(ss);
var diag: std.zip.Diagnostics = .{ .allocator = al };
var filename_buf: [std.fs.MAX_PATH_BYTES]u8 = undefined;
while (try iter.next()) |entry| {
try diag.nextFilename(filename_buf[0..entry.filename_len]);
std.debug.print("filename: {s}\n", .{filename_buf[0..entry.filename_len]});
}
but it outputs garbage:
filename: ����������������
filename: ���������������
filename: ����������������
filename: �����������������������������
filename: �����������������
filename: ���������������������������
filename: �����������������
filename: ���������������������
could it be that this filename data is not filled in unless extract has just been called? -: