commit 90de04bc7f1b85b9c491bcd124f6178fad005de1 from: Stefan Sperling date: Mon Oct 11 18:32:16 2021 UTC fix a segfault in edscript() introduced by my previous commit Found by our cherrypick regression tests. commit - f10244c07ff073c7f69ecf2044ac34e85f0666a0 commit + 90de04bc7f1b85b9c491bcd124f6178fad005de1 blob - 4619d898de367bdd4a4c3ff090a223135dbb0935 blob + 9b918583a6db04e4fff29bcb04a7490e23db43cc --- lib/diff3.c +++ lib/diff3.c @@ -982,7 +982,7 @@ edscript(int n, struct diff3_state *d3s) off_t len; char *line = NULL; size_t linesize = 0; - ssize_t linelen, k; + ssize_t linelen = 0, k; for (; n > 0; n--) { if (!d3s->overlap[n]) { @@ -1013,7 +1013,7 @@ edscript(int n, struct diff3_state *d3s) goto done; } err = diff_output(d3s->diffbuf, "%s%s\n", - line[linelen] == '\n' ? ":" : "", + linelen > 0 && line[linelen] == '\n' ? ":" : "", GOT_DIFF_CONFLICT_MARKER_SEP); if (err) goto done;