diff options
| -rw-r--r-- | builtin/merge.c | 10 | 
1 files changed, 4 insertions, 6 deletions
| diff --git a/builtin/merge.c b/builtin/merge.c index b49c310866..f50270efb1 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -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"); | 
