submodule: inline submodule_commits() into caller
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>maint
parent
7c2f8cc58c
commit
1e5dd3a111
22
submodule.c
22
submodule.c
|
@ -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);
|
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 collect_changed_submodules_cb_data {
|
||||||
struct repository *repo;
|
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++) {
|
for (i = 0; i < q->nr; i++) {
|
||||||
struct diff_filepair *p = q->queue[i];
|
struct diff_filepair *p = q->queue[i];
|
||||||
struct oid_array *commits;
|
|
||||||
const struct submodule *submodule;
|
const struct submodule *submodule;
|
||||||
const char *name;
|
const char *name;
|
||||||
|
struct string_list_item *item;
|
||||||
|
|
||||||
if (!S_ISGITLINK(p->two->mode))
|
if (!S_ISGITLINK(p->two->mode))
|
||||||
continue;
|
continue;
|
||||||
|
@ -859,8 +846,11 @@ static void collect_changed_submodules_cb(struct diff_queue_struct *q,
|
||||||
if (!name)
|
if (!name)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
commits = submodule_commits(changed, name);
|
item = string_list_insert(changed, name);
|
||||||
oid_array_append(commits, &p->two->oid);
|
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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue