summaryrefslogtreecommitdiff
path: root/builtin/commit.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2024-03-07 15:59:41 -0800
committerJunio C Hamano <gitster@pobox.com>2024-03-07 15:59:41 -0800
commitae46d5fb98b316767f51a82fc0c1441174995a34 (patch)
treecc3dfac4a54bcdb534eb86be1f50a9791ea1a7c9 /builtin/commit.c
parent76d1cd8e5ec07889db43c15222d5632b90f525b2 (diff)
parent342990c7aaef5ac645e89101cb84569caf64baf4 (diff)
Merge branch 'js/merge-tree-3-trees'
"git merge-tree" has learned that the three trees involved in the 3-way merge only need to be trees, not necessarily commits. * js/merge-tree-3-trees: fill_tree_descriptor(): mark error message for translation cache-tree: avoid an unnecessary check Always check `parse_tree*()`'s return value t4301: verify that merge-tree fails on missing blob objects merge-ort: do check `parse_tree()`'s return value merge-tree: fail with a non-zero exit code on missing tree objects merge-tree: accept 3 trees as arguments
Diffstat (limited to 'builtin/commit.c')
-rw-r--r--builtin/commit.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/builtin/commit.c b/builtin/commit.c
index 6d1fa71676..3841fa27d2 100644
--- a/builtin/commit.c
+++ b/builtin/commit.c
@@ -331,7 +331,8 @@ static void create_base_index(const struct commit *current_head)
tree = parse_tree_indirect(&current_head->object.oid);
if (!tree)
die(_("failed to unpack HEAD tree object"));
- parse_tree(tree);
+ if (parse_tree(tree) < 0)
+ exit(128);
init_tree_desc(&t, tree->buffer, tree->size);
if (unpack_trees(1, &t, &opts))
exit(128); /* We've already reported the error, finish dying */