]> git.ipfire.org Git - thirdparty/git.git/commitdiff
submodule: inline submodule_commits() into caller
authorGlen Choo <chooglen@google.com>
Tue, 8 Mar 2022 00:14:28 +0000 (16:14 -0800)
committerJunio C Hamano <gitster@pobox.com>
Tue, 8 Mar 2022 00:51:03 +0000 (16:51 -0800)
When collecting the string_list of changed submodule names, the new
submodules commits are stored in the string_list_item.util as an
oid_array. A subsequent commit will replace the oid_array with a struct
that has more information.

Prepare for this change by inlining submodule_commits() (which inserts
into the string_list and initializes the string_list_item.util) into its
only caller so that the code is easier to refactor later.

Signed-off-by: Glen Choo <chooglen@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
submodule.c

index 4f3300f2cbda1fea16d0ad6ff6e43bf2998f8b39..3bc189cf05cbfbb49ba68d98707ccca02d5bd311 100644 (file)
@@ -782,19 +782,6 @@ const struct submodule *submodule_from_ce(const struct cache_entry *ce)
        return submodule_from_path(the_repository, null_oid(), ce->name);
 }
 
-static struct oid_array *submodule_commits(struct string_list *submodules,
-                                          const char *name)
-{
-       struct string_list_item *item;
-
-       item = string_list_insert(submodules, name);
-       if (item->util)
-               return (struct oid_array *) item->util;
-
-       /* NEEDSWORK: should we have oid_array_init()? */
-       item->util = xcalloc(1, sizeof(struct oid_array));
-       return (struct oid_array *) item->util;
-}
 
 struct collect_changed_submodules_cb_data {
        struct repository *repo;
@@ -830,9 +817,9 @@ static void collect_changed_submodules_cb(struct diff_queue_struct *q,
 
        for (i = 0; i < q->nr; i++) {
                struct diff_filepair *p = q->queue[i];
-               struct oid_array *commits;
                const struct submodule *submodule;
                const char *name;
+               struct string_list_item *item;
 
                if (!S_ISGITLINK(p->two->mode))
                        continue;
@@ -859,8 +846,11 @@ static void collect_changed_submodules_cb(struct diff_queue_struct *q,
                if (!name)
                        continue;
 
-               commits = submodule_commits(changed, name);
-               oid_array_append(commits, &p->two->oid);
+               item = string_list_insert(changed, name);
+               if (!item->util)
+                       /* NEEDSWORK: should we have oid_array_init()? */
+                       item->util = xcalloc(1, sizeof(struct oid_array));
+               oid_array_append(item->util, &p->two->oid);
        }
 }