Skip to content

Commit 4d27d8c

Browse files
committed
Merge branch 'bc/blame-crlf-test' into maint
"git blame" assigned the blame to the copy in the working-tree if the repository is set to core.autocrlf=input and the file used CRLF line endings. * bc/blame-crlf-test: blame: correctly handle files regardless of autocrlf
2 parents 6bf8426 + 4d4813a commit 4d27d8c

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

builtin/blame.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2095,7 +2095,6 @@ static struct commit *fake_working_tree_commit(struct diff_options *opt,
20952095
if (strbuf_read(&buf, 0, 0) < 0)
20962096
die_errno("failed to read from stdin");
20972097
}
2098-
convert_to_git(path, buf.buf, buf.len, &buf, 0);
20992098
origin->file.ptr = buf.buf;
21002099
origin->file.size = buf.len;
21012100
pretend_sha1_file(buf.buf, buf.len, OBJ_BLOB, origin->blob_sha1);

t/t8003-blame-corner-cases.sh

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,4 +191,13 @@ test_expect_success 'indent of line numbers, ten lines' '
191191
test $(grep -c " " actual) = 9
192192
'
193193

194+
test_expect_success 'blaming files with CRLF newlines' '
195+
git config core.autocrlf false &&
196+
printf "testcase\r\n" >crlffile &&
197+
git add crlffile &&
198+
git commit -m testcase &&
199+
git -c core.autocrlf=input blame crlffile >actual &&
200+
grep "A U Thor" actual
201+
'
202+
194203
test_done

0 commit comments

Comments
 (0)