treesummaryrefslogcommitdiff
path: root/git.zig
diff options
context:
space:
mode:
Diffstat (limited to 'git.zig')
-rw-r--r--git.zig8
1 files changed, 8 insertions, 0 deletions
diff --git a/git.zig b/git.zig
index e21847c..d228b50 100644
--- a/git.zig
+++ b/git.zig
@@ -30,6 +30,14 @@ const Object = struct {
// pub fn getBlob(self: *Object) Blob {}
};
+fn decompress(alloc: Alloc, r: Reader) ![]u8 {
+ var buffer = std.ArrayList(u8).init(alloc);
+
+ try std.compress.zlib.decompress(r, buffer.writer().any());
+
+ return alloc.realloc(buffer.allocatedSlice(), buffer.items.len);
+}
+
const PackFile = struct {
alloc: Alloc,
idxFile: std.fs.File,