merge: simplify merge_trivial() by using commit_list_append()
PATCH 1/1 merge: simplify merge_trivial() by using commit_list_append()
Build the commit_list of parents by calling commit_list_append() twice instead of allocating and linking the items by hand. This makes the code shorter and simpler. Rename the commit_list from parent to parents (plural) while at it because there are two of them.
Signed-off-by Rene Scharfe <[email protected]>
--- builtin/merge.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-)
builtin/merge.c +4 -6
@@ -843,16 +843,14 @@ static void prepare_to_commit(struct commit_list *remoteheads)static int merge_trivial (struct commit *head,struct commit_list *remoteheads) {unsigned char result_tree[20 ], result_commit[20 ]; -struct commit_list *parent =xmalloc (sizeof (*parent)); +struct commit_list *parents, **pptr = &parents;write_tree_trivial (result_tree);printf (_ ("Wonderful.\n" )); - parent->item = head; - parent->next =xmalloc (sizeof (*parent->next)); - parent->next->item = remoteheads->item; - parent->next->next =NULL ; + pptr =commit_list_append (head, pptr); + pptr =commit_list_append (remoteheads->item, pptr);prepare_to_commit (remoteheads); -if (commit_tree (merge_msg.buf, merge_msg.len, result_tree, parent, +if (commit_tree (merge_msg.buf, merge_msg.len, result_tree, parents, result_commit,NULL , sign_commit))die (_ ("failed to write commit object" ));finish (head, remoteheads, result_commit,"In-index merge" );
Signature · 1 line
2.0.0