commit 2bd02883c7260bb60e3c896bba37a7e6f403769f (tree)
parent 4ad8bc341328e289744a0cc796043d0dd52bb32d
Author: Rick Calixte <10281587+rcalixte@users.noreply.github.com>
Date: Tue, 30 Dec 2025 23:32:56 -0500
git.zig: Process data packets of all lengths, discarding unrecognized packets
This addresses the regression specific to GitHub's chunked transfer encoding
for larger repositories while leaving existing functionality intact.
Diffstat:
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/Package/Fetch/git.zig b/src/Package/Fetch/git.zig
@@ -1107,7 +1107,7 @@ pub const Session = struct {
return error.ReadFailed;
}) {
.flush => return error.EndOfStream,
- .data => |data| if (data.len > 1) switch (@as(StreamCode, @enumFromInt(data[0]))) {
+ .data => |data| switch (@as(StreamCode, @enumFromInt(data[0]))) {
.pack_data => {
input.toss(1);
fs.remaining_len = data.len - 1;
@@ -1117,7 +1117,9 @@ pub const Session = struct {
fs.err = error.ProtocolError;
return error.ReadFailed;
},
- else => {},
+ else => {
+ input.toss(data.len);
+ },
},
else => {
fs.err = error.UnexpectedPacket;