summaryrefslogtreecommitdiff
path: root/t/t4200-rerere.sh
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2018-09-24 17:30:48 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-09-24 17:30:48 (GMT)
commitbd3941a0aed0756aba43f504d0dea7a3fbe0c82b (patch)
tree17d9c22f6491f77904aa727ccfc833c9150d441b /t/t4200-rerere.sh
parente3d4ff037db41234eaf74167ab7d1a443c23243d (diff)
parentad2bf0d9b43433583e88128c278ce31c7ca4e431 (diff)
downloadgit-bd3941a0aed0756aba43f504d0dea7a3fbe0c82b.zip
git-bd3941a0aed0756aba43f504d0dea7a3fbe0c82b.tar.gz
git-bd3941a0aed0756aba43f504d0dea7a3fbe0c82b.tar.bz2
Merge branch 'en/rerere-multi-stage-1-fix'
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/t4200-rerere.sh')
-rwxr-xr-xt/t4200-rerere.sh29
1 files changed, 29 insertions, 0 deletions
diff --git a/t/t4200-rerere.sh b/t/t4200-rerere.sh
index 428b3c1..55b7750 100755
--- a/t/t4200-rerere.sh
+++ b/t/t4200-rerere.sh
@@ -642,4 +642,33 @@ test_expect_success 'rerere with inner conflict markers' '
test_cmp expect actual
'
+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