diff options
| author | Junio C Hamano <gitster@pobox.com> | 2022-12-26 11:42:07 +0900 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2022-12-26 11:42:07 +0900 |
| commit | e57caee004362ee855a3bc8fc826abe251eb64f8 (patch) | |
| tree | d6b8c29059cff7a5225e830729e70ab7afa018d7 | |
| parent | Merge branch 'jk/ref-filter-error-reporting-fix' (diff) | |
| parent | diff: fix regression with --stat and unmerged file (diff) | |
| download | git-e57caee004362ee855a3bc8fc826abe251eb64f8.tar.gz git-e57caee004362ee855a3bc8fc826abe251eb64f8.zip | |
Merge branch 'pg/diff-stat-unmerged-regression-fix'
The output from "git diff --stat" on an unmerged path lost the
terminating LF in Git 2.39, which has been corrected.
* pg/diff-stat-unmerged-regression-fix:
diff: fix regression with --stat and unmerged file
| -rw-r--r-- | diff.c | 2 | ||||
| -rwxr-xr-x | t/t4046-diff-unmerged.sh | 10 |
2 files changed, 11 insertions, 1 deletions
@@ -2800,7 +2800,7 @@ static void show_stats(struct diffstat_t *data, struct diff_options *options) else if (file->is_unmerged) { strbuf_addf(&out, " %s%s%*s | %*s", prefix, name, padding, "", - number_width, "Unmerged"); + number_width, "Unmerged\n"); emit_diff_symbol(options, DIFF_SYMBOL_STATS_LINE, out.buf, out.len, 0); strbuf_reset(&out); diff --git a/t/t4046-diff-unmerged.sh b/t/t4046-diff-unmerged.sh index 0ae0cd3a52..ffaf69335f 100755 --- a/t/t4046-diff-unmerged.sh +++ b/t/t4046-diff-unmerged.sh @@ -86,4 +86,14 @@ test_expect_success 'diff-files -3' ' test_cmp diff-files-3.expect diff-files-3.actual ' +test_expect_success 'diff --stat' ' + for path in $paths + do + echo " $path | Unmerged" || return 1 + done >diff-stat.expect && + echo " 0 files changed" >>diff-stat.expect && + git diff --cached --stat >diff-stat.actual && + test_cmp diff-stat.expect diff-stat.actual +' + test_done |
