Merge branch 'js/merge-ort-in-read-only-repo' into maint-2.38

In read-only repositories, "git merge-tree" tried to come up with a
merge result tree object, which it failed (which is not wrong) and
led to a segfault (which is bad), which has been corrected.

* js/merge-ort-in-read-only-repo:
  merge-ort: return early when failing to write a blob
  merge-ort: fix segmentation fault in read-only repositories
This commit is contained in:
Junio C Hamano
2022-10-25 17:11:34 -07:00
2 changed files with 69 additions and 34 deletions

View File

@ -810,4 +810,13 @@ test_expect_success 'can override merge of unrelated histories' '
test_cmp expect actual
'
test_expect_success SANITY 'merge-ort fails gracefully in a read-only repository' '
git init --bare read-only &&
git push read-only side1 side2 side3 &&
test_when_finished "chmod -R u+w read-only" &&
chmod -R a-w read-only &&
test_must_fail git -C read-only merge-tree side1 side3 &&
test_must_fail git -C read-only merge-tree side1 side2
'
test_done