builtin-commit: use commit_tree()
[gitweb.git] / builtin-merge.c
index d6bcbec705fe5a2d278cba9cafd56415127d5afc..4a8ec604d390d0b600ee7a6b3d5b74975dbf87d3 100644 (file)
@@ -80,7 +80,7 @@ static struct strategy *get_strategy(const char *name)
        int i;
        struct strategy *ret;
        static struct cmdnames main_cmds, other_cmds;
-       static int longest;
+       static int loaded;
 
        if (!name)
                return NULL;
@@ -89,14 +89,12 @@ static struct strategy *get_strategy(const char *name)
                if (!strcmp(name, all_strategy[i].name))
                        return &all_strategy[i];
 
-       if (!longest) {
+       if (!loaded) {
                struct cmdnames not_strategies;
+               loaded = 1;
 
-               memset(&main_cmds, 0, sizeof(struct cmdnames));
-               memset(&other_cmds, 0, sizeof(struct cmdnames));
                memset(&not_strategies, 0, sizeof(struct cmdnames));
-               longest = load_command_list("git-merge-", &main_cmds,
-                               &other_cmds);
+               load_command_list("git-merge-", &main_cmds, &other_cmds);
                for (i = 0; i < main_cmds.cnt; i++) {
                        int j, found = 0;
                        struct cmdname *ent = main_cmds.names[i];
@@ -693,7 +691,7 @@ static int merge_trivial(void)
        parent->next = xmalloc(sizeof(struct commit_list *));
        parent->next->item = remoteheads->item;
        parent->next->next = NULL;
-       commit_tree(merge_msg.buf, result_tree, parent, result_commit);
+       commit_tree(merge_msg.buf, result_tree, parent, result_commit, NULL);
        finish(result_commit, "In-index merge");
        drop_save();
        return 0;
@@ -722,7 +720,7 @@ static int finish_automerge(struct commit_list *common,
        }
        free_commit_list(remoteheads);
        strbuf_addch(&merge_msg, '\n');
-       commit_tree(merge_msg.buf, result_tree, parents, result_commit);
+       commit_tree(merge_msg.buf, result_tree, parents, result_commit, NULL);
        strbuf_addf(&buf, "Merge made by %s.", wt_strategy);
        finish(result_commit, buf.buf);
        strbuf_release(&buf);