t4200: demonstrate rerere segfault on specially crafted merge
authorElijah Newren <newren@gmail.com>
Tue, 11 Sep 2018 18:55:45 +0000 (11:55 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 11 Sep 2018 20:43:21 +0000 (13:43 -0700)
Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t4200-rerere.sh

index d97d2be..ed9e495 100755 (executable)
@@ -580,4 +580,33 @@ test_expect_success 'multiple identical conflicts' '
        count_pre_post 0 0
 '
 
+test_expect_success 'setup simple stage 1 handling' '
+       test_create_repo stage_1_handling &&
+       (
+               cd stage_1_handling &&
+
+               test_seq 1 10 >original &&
+               git add original &&
+               git commit -m original &&
+
+               git checkout -b A master &&
+               git mv original A &&
+               git commit -m "rename to A" &&
+
+               git checkout -b B master &&
+               git mv original B &&
+               git commit -m "rename to B"
+       )
+'
+
+test_expect_failure 'test simple stage 1 handling' '
+       (
+               cd stage_1_handling &&
+
+               git config rerere.enabled true &&
+               git checkout A^0 &&
+               test_must_fail git merge B^0
+       )
+'
+
 test_done