]> git.ipfire.org Git - thirdparty/git.git/commitdiff
cocci: apply the "commit-reach.h" part of "the_repository.pending"
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>
Tue, 28 Mar 2023 13:58:47 +0000 (15:58 +0200)
committerJunio C Hamano <gitster@pobox.com>
Tue, 28 Mar 2023 14:36:36 +0000 (07:36 -0700)
Apply the part of "the_repository.pending.cocci" pertaining to
"commit-reach.h".

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
26 files changed:
bisect.c
builtin/branch.c
builtin/fast-import.c
builtin/fetch.c
builtin/log.c
builtin/merge-base.c
builtin/merge-tree.c
builtin/merge.c
builtin/rebase.c
builtin/receive-pack.c
builtin/rev-parse.c
commit-reach.c
commit-reach.h
commit.c
contrib/coccinelle/the_repository.cocci
contrib/coccinelle/the_repository.pending.cocci
http-push.c
log-tree.c
merge-ort.c
merge-recursive.c
notes-merge.c
remote.c
revision.c
sequencer.c
shallow.c
t/helper/test-reach.c

index ef5ee5a6436f066e33510219e9a0f73b09bf7aaf..3088516e174eb666e1ec26503db7fb692d12b7b5 100644 (file)
--- a/bisect.c
+++ b/bisect.c
@@ -846,7 +846,8 @@ static enum bisect_error check_merge_bases(int rev_nr, struct commit **rev, int
        enum bisect_error res = BISECT_OK;
        struct commit_list *result;
 
-       result = get_merge_bases_many(rev[0], rev_nr - 1, rev + 1);
+       result = repo_get_merge_bases_many(the_repository, rev[0], rev_nr - 1,
+                                          rev + 1);
 
        for (; result; result = result->next) {
                const struct object_id *mb = &result->item->object.oid;
index 968ea03c0593c1df4e88265a325ccbbc2d00c40c..bbcfb34b3c65299a73d2b9b33d2b34d86c3ddf53 100644 (file)
@@ -150,7 +150,8 @@ static int branch_merged(int kind, const char *name,
        if (!reference_rev)
                reference_rev = head_rev;
 
-       merged = reference_rev ? in_merge_bases(rev, reference_rev) : 0;
+       merged = reference_rev ? repo_in_merge_bases(the_repository, rev,
+                                                    reference_rev) : 0;
 
        /*
         * After the safety valve is fully redefined to "check with
@@ -160,7 +161,7 @@ static int branch_merged(int kind, const char *name,
         * a gentle reminder is in order.
         */
        if ((head_rev != reference_rev) &&
-           (head_rev ? in_merge_bases(rev, head_rev) : 0) != merged) {
+           (head_rev ? repo_in_merge_bases(the_repository, rev, head_rev) : 0) != merged) {
                if (merged)
                        warning(_("deleting branch '%s' that has been merged to\n"
                                "         '%s', but not yet merged to HEAD."),
index f533b768efbf64f05aab436e6f2607f87d919df0..2098c0c5a3748eec1cecb861343aa95f1f73bf58 100644 (file)
@@ -1625,7 +1625,7 @@ static int update_branch(struct branch *b)
                if (!old_cmit || !new_cmit)
                        return error("Branch %s is missing commits.", b->name);
 
-               if (!in_merge_bases(old_cmit, new_cmit)) {
+               if (!repo_in_merge_bases(the_repository, old_cmit, new_cmit)) {
                        warning("Not updating %s"
                                " (new tip %s does not contain %s)",
                                b->name, oid_to_hex(&b->oid),
index 80cf1d0158395f5358e1c8f968d631517b02879a..db8815032fc5b9e5867551e2353bf1cd9ce8f3ea 100644 (file)
@@ -965,7 +965,8 @@ static int update_local_ref(struct ref *ref,
 
        if (fetch_show_forced_updates) {
                uint64_t t_before = getnanotime();
-               fast_forward = in_merge_bases(current, updated);
+               fast_forward = repo_in_merge_bases(the_repository, current,
+                                                  updated);
                forced_updates_ms += (getnanotime() - t_before) / 1000000;
        } else {
                fast_forward = 1;
index b4c38f6ad872cd469f5353aaefbee199215c7d4a..5604b4b5f05c7f79c284d008690caf19ed867f1c 100644 (file)
@@ -1649,7 +1649,9 @@ static struct commit *get_base_commit(const char *base_commit,
                                        return NULL;
                        }
                        commit = lookup_commit_or_die(&oid, "upstream base");
-                       base_list = get_merge_bases_many(commit, total, list);
+                       base_list = repo_get_merge_bases_many(the_repository,
+                                                             commit, total,
+                                                             list);
                        /* There should be one and only one merge base. */
                        if (!base_list || base_list->next) {
                                if (die_on_failure) {
@@ -1683,7 +1685,9 @@ static struct commit *get_base_commit(const char *base_commit,
        while (rev_nr > 1) {
                for (i = 0; i < rev_nr / 2; i++) {
                        struct commit_list *merge_base;
-                       merge_base = get_merge_bases(rev[2 * i], rev[2 * i + 1]);
+                       merge_base = repo_get_merge_bases(the_repository,
+                                                         rev[2 * i],
+                                                         rev[2 * i + 1]);
                        if (!merge_base || merge_base->next) {
                                if (die_on_failure) {
                                        die(_("failed to find exact merge base"));
@@ -1701,7 +1705,7 @@ static struct commit *get_base_commit(const char *base_commit,
                rev_nr = DIV_ROUND_UP(rev_nr, 2);
        }
 
-       if (!in_merge_bases(base, rev[0])) {
+       if (!repo_in_merge_bases(the_repository, base, rev[0])) {
                if (die_on_failure) {
                        die(_("base commit should be the ancestor of revision list"));
                } else {
index 688d5c29b76440df8c9c8e6fc1c7609142b9ee2d..64d29136d1630fffda133bfb23a8d609a09a626b 100644 (file)
@@ -13,7 +13,8 @@ static int show_merge_base(struct commit **rev, int rev_nr, int show_all)
 {
        struct commit_list *result, *r;
 
-       result = get_merge_bases_many_dirty(rev[0], rev_nr - 1, rev + 1);
+       result = repo_get_merge_bases_many_dirty(the_repository, rev[0],
+                                                rev_nr - 1, rev + 1);
 
        if (!result)
                return 1;
@@ -105,7 +106,7 @@ static int handle_is_ancestor(int argc, const char **argv)
                die("--is-ancestor takes exactly two commits");
        one = get_commit_reference(argv[0]);
        two = get_commit_reference(argv[1]);
-       if (in_merge_bases(one, two))
+       if (repo_in_merge_bases(the_repository, one, two))
                return 0;
        else
                return 1;
index 828dc81c426514d822e6bbce172495373f9a92c5..4e4a9d6ba177499191716ddd0b02132b606e9620 100644 (file)
@@ -452,7 +452,8 @@ static int real_merge(struct merge_tree_options *o,
                 * Get the merge bases, in reverse order; see comment above
                 * merge_incore_recursive in merge-ort.h
                 */
-               merge_bases = get_merge_bases(parent1, parent2);
+               merge_bases = repo_get_merge_bases(the_repository, parent1,
+                                                  parent2);
                if (!merge_bases && !o->allow_unrelated_histories)
                        die(_("refusing to merge unrelated histories"));
                merge_bases = reverse_commit_list(merge_bases);
index 7331a0cd9118246703979544d58e6f264f9fd77e..c5a9321806dd244319c99b9e1b2542fab0e285f9 100644 (file)
@@ -1531,7 +1531,8 @@ int cmd_merge(int argc, const char **argv, const char *prefix)
        if (!remoteheads)
                ; /* already up-to-date */
        else if (!remoteheads->next)
-               common = get_merge_bases(head_commit, remoteheads->item);
+               common = repo_get_merge_bases(the_repository, head_commit,
+                                             remoteheads->item);
        else {
                struct commit_list *list = remoteheads;
                commit_list_insert(head_commit, &list);
@@ -1649,7 +1650,9 @@ int cmd_merge(int argc, const char **argv, const char *prefix)
                         * merge_bases again, otherwise "git merge HEAD^
                         * HEAD^^" would be missed.
                         */
-                       common_one = get_merge_bases(head_commit, j->item);
+                       common_one = repo_get_merge_bases(the_repository,
+                                                         head_commit,
+                                                         j->item);
                        if (!oideq(&common_one->item->object.oid, &j->item->object.oid)) {
                                up_to_date = 0;
                                break;
index d5358ca89d2a77d6a83c5b493532f4df8c492049..5fd7bfb486090541df571248fb5488b6fdb4a3fb 100644 (file)
@@ -882,7 +882,7 @@ static int can_fast_forward(struct commit *onto, struct commit *upstream,
        if (!upstream)
                goto done;
 
-       merge_bases = get_merge_bases(upstream, head);
+       merge_bases = repo_get_merge_bases(the_repository, upstream, head);
        if (!merge_bases || merge_bases->next)
                goto done;
 
@@ -901,7 +901,8 @@ static void fill_branch_base(struct rebase_options *options,
 {
        struct commit_list *merge_bases = NULL;
 
-       merge_bases = get_merge_bases(options->onto, options->orig_head);
+       merge_bases = repo_get_merge_bases(the_repository, options->onto,
+                                          options->orig_head);
        if (!merge_bases || merge_bases->next)
                oidcpy(branch_base, null_oid());
        else
index b5816624d25fa2b3898e9a2fa5af80a635eac315..6d4fc1368a4a1ce3196fbed65d07a5982ffa73db 100644 (file)
@@ -1548,7 +1548,7 @@ static const char *update(struct command *cmd, struct shallow_info *si)
                }
                old_commit = (struct commit *)old_object;
                new_commit = (struct commit *)new_object;
-               if (!in_merge_bases(old_commit, new_commit)) {
+               if (!repo_in_merge_bases(the_repository, old_commit, new_commit)) {
                        rp_error("denying non-fast-forward %s"
                                 " (you should pull first)", name);
                        ret = "non-fast-forward";
index eb53a303de66db9c67f5a8da20f84cadcd776d94..5685cf0ea7d1720538203c2e72bcd07724d29134 100644 (file)
@@ -292,7 +292,7 @@ static int try_difference(const char *arg)
                                *dotdot = '.';
                                return 0;
                        }
-                       exclude = get_merge_bases(a, b);
+                       exclude = repo_get_merge_bases(the_repository, a, b);
                        while (exclude) {
                                struct commit *commit = pop_commit(&exclude);
                                show_rev(REVERSED, &commit->object.oid, NULL);
index 2e33c599a82c81127b9a24547d0834e6c7a55bcf..a4b9eda723fa80af82e30b1f0363666a9ba2e3ea 100644 (file)
@@ -162,7 +162,8 @@ struct commit_list *get_octopus_merge_bases(struct commit_list *in)
 
                for (j = ret; j; j = j->next) {
                        struct commit_list *bases;
-                       bases = get_merge_bases(i->item, j->item);
+                       bases = repo_get_merge_bases(the_repository, i->item,
+                                                    j->item);
                        if (!new_commits)
                                new_commits = bases;
                        else
index 148b56fea50629607d2f0dd196cbd4dec08fdcfd..94a96e032991c6d03c3517caf9fbc6c7dd96801c 100644 (file)
@@ -19,11 +19,6 @@ struct commit_list *repo_get_merge_bases_many(struct repository *r,
 struct commit_list *repo_get_merge_bases_many_dirty(struct repository *r,
                                                    struct commit *one, int n,
                                                    struct commit **twos);
-#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS
-#define get_merge_bases(r1, r2)           repo_get_merge_bases(the_repository, r1, r2)
-#define get_merge_bases_many(one, n, two) repo_get_merge_bases_many(the_repository, one, n, two)
-#define get_merge_bases_many_dirty(one, n, twos) repo_get_merge_bases_many_dirty(the_repository, one, n, twos)
-#endif
 
 struct commit_list *get_octopus_merge_bases(struct commit_list *in);
 
@@ -36,10 +31,6 @@ int repo_in_merge_bases(struct repository *r,
 int repo_in_merge_bases_many(struct repository *r,
                             struct commit *commit,
                             int nr_reference, struct commit **reference);
-#ifndef NO_THE_REPOSITORY_COMPATIBILITY_MACROS
-#define in_merge_bases(c1, c2) repo_in_merge_bases(the_repository, c1, c2)
-#define in_merge_bases_many(c1, n, cs) repo_in_merge_bases_many(the_repository, c1, n, cs)
-#endif
 
 /*
  * Takes a list of commits and returns a new list where those
index 06a7c728e80d8fac3d2dc1f0dadf40c43159e241..62682f5564388722dd63ca1e378327a5a6281878 100644 (file)
--- a/commit.c
+++ b/commit.c
@@ -1014,7 +1014,8 @@ struct commit *get_fork_point(const char *refname, struct commit *commit)
        for (i = 0; i < revs.nr; i++)
                revs.commit[i]->object.flags &= ~TMP_MARK;
 
-       bases = get_merge_bases_many(commit, revs.nr, revs.commit);
+       bases = repo_get_merge_bases_many(the_repository, commit, revs.nr,
+                                         revs.commit);
 
        /*
         * There should be one and only one merge base, when we found
index dcdba314fc299dd7a090fd82c3c9560104f2f288..1ab63f0196bd0ce9be97264cce65eb4bafc75269 100644 (file)
 |
 - peel_to_type
 + repo_peel_to_type
+// commit-reach.h
+|
+- get_merge_bases
++ repo_get_merge_bases
+|
+- get_merge_bases_many
++ repo_get_merge_bases_many
+|
+- get_merge_bases_many_dirty
++ repo_get_merge_bases_many_dirty
+|
+- in_merge_bases
++ repo_in_merge_bases
+|
+- in_merge_bases_many
++ repo_in_merge_bases_many
 )
   (
 + the_repository,
index 2d200ab83e767d3cdc6927157806dd263d73c38c..e9209fc0cc403319a7ebaf6bbd7607b96436dd53 100644 (file)
@@ -5,23 +5,7 @@
 @@
 @@
 (
-// commit-reach.h
-- get_merge_bases
-+ repo_get_merge_bases
-|
-- get_merge_bases_many
-+ repo_get_merge_bases_many
-|
-- get_merge_bases_many_dirty
-+ repo_get_merge_bases_many_dirty
-|
-- in_merge_bases
-+ repo_in_merge_bases
-|
-- in_merge_bases_many
-+ repo_in_merge_bases_many
 // commit.h
-|
 - parse_commit_internal
 + repo_parse_commit_internal
 |
index 7f71316456c6832daa28bfc054f53b3224bf970f..ceab00bd901f2deaca63d221a6c4f78a6be16228 100644 (file)
@@ -1570,7 +1570,7 @@ static int verify_merge_base(struct object_id *head_oid, struct ref *remote)
        struct commit *branch = lookup_commit_or_die(&remote->old_oid,
                                                     remote->name);
 
-       return in_merge_bases(branch, head);
+       return repo_in_merge_bases(the_repository, branch, head);
 }
 
 static int delete_remote_branch(const char *pattern, int force)
index f36adb947e8def5d8cff1d59d2cc1d5f3dcc654d..4bebb86ecacf002b6db1c80e607344405425ce78 100644 (file)
@@ -993,7 +993,7 @@ static int do_remerge_diff(struct rev_info *opt,
        /* Parse the relevant commits and get the merge bases */
        parse_commit_or_die(parent1);
        parse_commit_or_die(parent2);
-       bases = get_merge_bases(parent1, parent2);
+       bases = repo_get_merge_bases(the_repository, parent1, parent2);
 
        /* Re-merge the parents */
        merge_incore_recursive(&o, bases, parent1, parent2, &res);
index d1611ca400a40b05914a14759a009bf16d76f5ce..e9f8bd1598288264cf10df8c64c8f7d5050d4ac9 100644 (file)
@@ -5017,7 +5017,7 @@ static void merge_ort_internal(struct merge_options *opt,
        struct strbuf merge_base_abbrev = STRBUF_INIT;
 
        if (!merge_bases) {
-               merge_bases = get_merge_bases(h1, h2);
+               merge_bases = repo_get_merge_bases(the_repository, h1, h2);
                /* See merge-ort.h:merge_incore_recursive() declaration NOTE */
                merge_bases = reverse_commit_list(merge_bases);
        }
index ae469f8cc81d58a2be40be4e0365c715866012ec..9771ef540c43e7627a5231e3f71df9a11edc8acd 100644 (file)
@@ -3592,7 +3592,7 @@ static int merge_recursive_internal(struct merge_options *opt,
        }
 
        if (!merge_bases) {
-               merge_bases = get_merge_bases(h1, h2);
+               merge_bases = repo_get_merge_bases(the_repository, h1, h2);
                merge_bases = reverse_commit_list(merge_bases);
        }
 
index d290c7478e27a803c99aebc7558593b51c307553..fca9422a29427b782767b2cfd75675626ea6d0fb 100644 (file)
@@ -600,7 +600,7 @@ int notes_merge(struct notes_merge_options *o,
        assert(local && remote);
 
        /* Find merge bases */
-       bases = get_merge_bases(local, remote);
+       bases = repo_get_merge_bases(the_repository, local, remote);
        if (!bases) {
                base_oid = null_oid();
                base_tree_oid = the_hash_algo->empty_tree;
index ff9b02383189429e8d7ee4f702067f44b8a1fdcc..71b1ae2db05d731d693ff9cc700125a29aac39b9 100644 (file)
--- a/remote.c
+++ b/remote.c
@@ -2662,7 +2662,7 @@ static int is_reachable_in_reflog(const char *local, const struct ref *remote)
                if (MERGE_BASES_BATCH_SIZE < size)
                        size = MERGE_BASES_BATCH_SIZE;
 
-               if ((ret = in_merge_bases_many(commit, size, chunk)))
+               if ((ret = repo_in_merge_bases_many(the_repository, commit, size, chunk)))
                        break;
        }
 
index 0f775ee2e90058feeb3a1d6cd2731ab739840267..c2b7b2f1073a3c2714a09f8f40fc8b443ea22660 100644 (file)
@@ -1957,7 +1957,7 @@ static void prepare_show_merge(struct rev_info *revs)
        other = lookup_commit_or_die(&oid, "MERGE_HEAD");
        add_pending_object(revs, &head->object, "HEAD");
        add_pending_object(revs, &other->object, "MERGE_HEAD");
-       bases = get_merge_bases(head, other);
+       bases = repo_get_merge_bases(the_repository, head, other);
        add_rev_cmdline_list(revs, bases, REV_CMD_MERGE_BASE, UNINTERESTING | BOTTOM);
        add_pending_commit_list(revs, bases, UNINTERESTING | BOTTOM);
        free_commit_list(bases);
@@ -2052,7 +2052,7 @@ static int handle_dotdot_1(const char *arg, char *dotdot,
                if (!a || !b)
                        return dotdot_missing(arg, dotdot, revs, symmetric);
 
-               exclude = get_merge_bases(a, b);
+               exclude = repo_get_merge_bases(the_repository, a, b);
                add_rev_cmdline_list(revs, exclude, REV_CMD_MERGE_BASE,
                                     flags_exclude);
                add_pending_commit_list(revs, exclude, flags_exclude);
index 818932a630a18c3bb608ede09e43dbf6254dc688..d97923883ffc1a860f17f1090d69fb4f06c4f4c1 100644 (file)
@@ -4102,7 +4102,8 @@ static int do_merge(struct repository *r,
        }
 
        merge_commit = to_merge->item;
-       bases = get_merge_bases(head_commit, merge_commit);
+       bases = repo_get_merge_bases(the_repository, head_commit,
+                                    merge_commit);
        if (bases && oideq(&merge_commit->object.oid,
                           &bases->item->object.oid)) {
                ret = 0;
index 17f9bcdb5f38270c4f5910a2e1c930432ba350e5..0fcdfd7d35ad2b51c62c0527c39656b5105306cf 100644 (file)
--- a/shallow.c
+++ b/shallow.c
@@ -791,7 +791,7 @@ static void post_assign_shallow(struct shallow_info *info,
                for (j = 0; j < bitmap_nr; j++)
                        if (bitmap[0][j] &&
                            /* Step 7, reachability test at commit level */
-                           !in_merge_bases_many(c, ca.nr, ca.commits)) {
+                           !repo_in_merge_bases_many(the_repository, c, ca.nr, ca.commits)) {
                                update_refstatus(ref_status, info->ref->nr, *bitmap);
                                dst++;
                                break;
@@ -819,9 +819,10 @@ int delayed_reachability_test(struct shallow_info *si, int c)
                        si->nr_commits = ca.nr;
                }
 
-               si->reachable[c] = in_merge_bases_many(commit,
-                                                      si->nr_commits,
-                                                      si->commits);
+               si->reachable[c] = repo_in_merge_bases_many(the_repository,
+                                                           commit,
+                                                           si->nr_commits,
+                                                           si->commits);
                si->need_reachability_test[c] = 0;
        }
        return si->reachable[c];
index 00f0f29a6a61daae3ab0961aea594a22dc0b9406..b6d197722f0d7ac6ab5c8b084e996d865070e88c 100644 (file)
@@ -106,13 +106,17 @@ int cmd__reach(int ac, const char **av)
        if (!strcmp(av[1], "ref_newer"))
                printf("%s(A,B):%d\n", av[1], ref_newer(&oid_A, &oid_B));
        else if (!strcmp(av[1], "in_merge_bases"))
-               printf("%s(A,B):%d\n", av[1], in_merge_bases(A, B));
+               printf("%s(A,B):%d\n", av[1],
+                      repo_in_merge_bases(the_repository, A, B));
        else if (!strcmp(av[1], "in_merge_bases_many"))
-               printf("%s(A,X):%d\n", av[1], in_merge_bases_many(A, X_nr, X_array));
+               printf("%s(A,X):%d\n", av[1],
+                      repo_in_merge_bases_many(the_repository, A, X_nr, X_array));
        else if (!strcmp(av[1], "is_descendant_of"))
                printf("%s(A,X):%d\n", av[1], repo_is_descendant_of(r, A, X));
        else if (!strcmp(av[1], "get_merge_bases_many")) {
-               struct commit_list *list = get_merge_bases_many(A, X_nr, X_array);
+               struct commit_list *list = repo_get_merge_bases_many(the_repository,
+                                                                    A, X_nr,
+                                                                    X_array);
                printf("%s(A,X):\n", av[1]);
                print_sorted_commit_ids(list);
        } else if (!strcmp(av[1], "reduce_heads")) {