]> gitweb.ps.run Git - ziggit/blobdiff - git.zig
change debug output to include hash and data length
[ziggit] / git.zig
diff --git a/git.zig b/git.zig
index ee3eb3d4f19abd35cca3d462ab9e9623cb730e2a..c45963ea9887938adc0be110adea8eabc2f23753 100644 (file)
--- a/git.zig
+++ b/git.zig
@@ -279,6 +279,9 @@ const PackFile = struct {
                 }
                 counter += bitsSet;
 
+                if (dataSize == 0)
+                    dataSize = 0x10000;
+
                 std.mem.copyForwards(
                     u8,
                     result[resultCounter..result.len],
@@ -294,6 +297,7 @@ const PackFile = struct {
                     result[resultCounter..result.len],
                     deltData[deltaDataOffset + counter + 1 .. deltaDataOffset + counter + 1 + dataSize],
                 );
+
                 resultCounter += dataSize;
                 counter += dataSize;
             }
@@ -331,6 +335,7 @@ const PackFile = struct {
 
         if (objectKind == 6) {
             const offset = try getOffset(reader);
+
             return try self.ofsDelta(
                 @intCast(offset.offset + objectSize.bytelen + offset.bytelen),
             );
@@ -515,7 +520,7 @@ test "list blobs" {
                         defer std.testing.allocator.free(bo.data);
 
                         if (treeEntry.permissions.len == 6) {
-                            std.debug.print("{s}: {s}\n", .{ treeEntry.name, bo.data[0..50] });
+                            std.debug.print("{s}: [{x} {}]{s}\n", .{ treeEntry.name, treeEntry.id, bo.data.len, bo.data[0..50] });
                         } else {
                             std.debug.print("[{s}]\n", .{treeEntry.name});
                         }