authorgravatar for 10281587+rcalixte@users.noreply.github.comRick Calixte <10281587+rcalixte@users.noreply.github.com> 2025-12-30 23:32:56-05:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-01-01 20:37:52+01:00
log2bd02883c7260bb60e3c896bba37a7e6f403769f
tree755fc38469022e92eb686040802b48837c7c1e40
parent4ad8bc341328e289744a0cc796043d0dd52bb32d

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.

1 files changed, 4 insertions(+), 2 deletions(-)

src/Package/Fetch/git.zig+4-2
......@@ -1107,7 +1107,7 @@ pub const Session = struct {
11071107 return error.ReadFailed;
11081108 }) {
11091109 .flush => return error.EndOfStream,
1110 .data => |data| if (data.len > 1) switch (@as(StreamCode, @enumFromInt(data[0]))) {
1110 .data => |data| switch (@as(StreamCode, @enumFromInt(data[0]))) {
11111111 .pack_data => {
11121112 input.toss(1);
11131113 fs.remaining_len = data.len - 1;
......@@ -1117,7 +1117,9 @@ pub const Session = struct {
11171117 fs.err = error.ProtocolError;
11181118 return error.ReadFailed;
11191119 },
1120 else => {},
1120 else => {
1121 input.toss(data.len);
1122 },
11211123 },
11221124 else => {
11231125 fs.err = error.UnexpectedPacket;