diff: demonstrate a bug with --patience and --ignore-space-at-eol
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Sat, 9 Jul 2016 07:23:50 +0000 (09:23 +0200)
committerJunio C Hamano <gitster@pobox.com>
Mon, 11 Jul 2016 18:55:08 +0000 (11:55 -0700)
When a single character is added to a line, the combination of these
two options results in an empty diff.

This bug was noticed and reported by Naja Melan.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t4033-diff-patience.sh

index 3c9932e..5f0d0b1 100755 (executable)
@@ -5,6 +5,14 @@ test_description='patience diff algorithm'
 . ./test-lib.sh
 . "$TEST_DIRECTORY"/lib-diff-alternative.sh
 
+test_expect_failure '--ignore-space-at-eol with a single appended character' '
+       printf "a\nb\nc\n" >pre &&
+       printf "a\nbX\nc\n" >post &&
+       test_must_fail git diff --no-index \
+               --patience --ignore-space-at-eol pre post >diff &&
+       grep "^+.*X" diff
+'
+
 test_diff_frobnitz "patience"
 
 test_diff_unique "patience"