diff options
author | Junio C Hamano <gitster@pobox.com> | 2018-11-21 16:57:44 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-11-21 16:57:44 +0300 |
commit | b4eafbcdb84fc406bff37f06fdf6310aca7d0249 (patch) | |
tree | 89f6f96f46f64695ac84ad9a49e14017e573ef77 /t | |
parent | e1372c37de9bbca8a96db10fe8ab7b3a420c9108 (diff) | |
parent | ad2bf0d9b43433583e88128c278ce31c7ca4e431 (diff) |
Merge branch 'en/rerere-multi-stage-1-fix' into maint
A corner case bugfix in "git rerere" code.
* en/rerere-multi-stage-1-fix:
rerere: avoid buffer overrun
t4200: demonstrate rerere segfault on specially crafted merge
Diffstat (limited to 't')
-rwxr-xr-x | t/t4200-rerere.sh | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/t/t4200-rerere.sh b/t/t4200-rerere.sh index 65da74c766..313222d0d6 100755 --- a/t/t4200-rerere.sh +++ b/t/t4200-rerere.sh @@ -577,4 +577,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_success '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 |