authorgravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2023-05-14 16:21:45 -07:00
committergravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2023-05-14 16:21:45 -07:00
logb8aab1f7bbda37a477646649af29aa73dbdfcd8a
treec1ce7e09136657c524d1c879a49bac0bb3ceba28
parent1dcc91b655c1cef7d1e515a1c2aef83f1f3b31db

parseTreeDiff: handle more diff lines


1 files changed, 6 insertions(+), 1 deletions(-)

git.zig+6-1
...@@ -336,11 +336,14 @@ pub fn parseTreeDiffMeta(input: string) !TreeDiffMeta {...@@ -336,11 +336,14 @@ pub fn parseTreeDiffMeta(input: string) !TreeDiffMeta {
336 }336 }
337337
338 std.debug.assert(std.mem.startsWith(u8, lineiter.next().?, "diff --git"));338 std.debug.assert(std.mem.startsWith(u8, lineiter.next().?, "diff --git"));
339 while (true) {339 blk: while (true) {
340 while (lineiter.next()) |lin| {340 while (lineiter.next()) |lin| {
341 if (std.mem.startsWith(u8, lin, "index")) break;341 if (std.mem.startsWith(u8, lin, "index")) break;
342 if (std.mem.startsWith(u8, lin, "new file mode")) continue;342 if (std.mem.startsWith(u8, lin, "new file mode")) continue;
343 if (std.mem.startsWith(u8, lin, "deleted file mode")) continue;343 if (std.mem.startsWith(u8, lin, "deleted file mode")) continue;
344 if (std.mem.startsWith(u8, lin, "old mode")) continue;
345 if (std.mem.startsWith(u8, lin, "new mode")) continue;
346 if (std.mem.startsWith(u8, lin, "diff --git")) continue :blk;
344347
345 std.log.err("{s}", .{lin});348 std.log.err("{s}", .{lin});
346 unreachable;349 unreachable;
...@@ -442,6 +445,8 @@ pub fn parseTreeDiff(alloc: std.mem.Allocator, input: string) !TreeDiff {...@@ -442,6 +445,8 @@ pub fn parseTreeDiff(alloc: std.mem.Allocator, input: string) !TreeDiff {
442 if (std.mem.startsWith(u8, lin, "index")) break;445 if (std.mem.startsWith(u8, lin, "index")) break;
443 if (std.mem.startsWith(u8, lin, "new file mode")) continue;446 if (std.mem.startsWith(u8, lin, "new file mode")) continue;
444 if (std.mem.startsWith(u8, lin, "deleted file mode")) continue;447 if (std.mem.startsWith(u8, lin, "deleted file mode")) continue;
448 if (std.mem.startsWith(u8, lin, "old mode")) continue;
449 if (std.mem.startsWith(u8, lin, "new mode")) continue;
445450
446 std.log.err("{s}", .{lin});451 std.log.err("{s}", .{lin});
447 unreachable;452 unreachable;