promisor-remote: refactor initialising field lists

In "promisor-remote.c", the fields_sent() and fields_checked()
functions serve similar purposes and contain a small amount of
duplicated code.

As we are going to add a similar function in a following commit,
let's refactor this common code into a new initialize_fields_list()
function.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Christian Couder
2026-02-16 14:23:07 +01:00
committed by Junio C Hamano
parent 864f55e190
commit a7d430d5b5

View File

@@ -375,18 +375,24 @@ static char *fields_from_config(struct string_list *fields_list, const char *con
return fields;
}
static struct string_list *initialize_fields_list(struct string_list *fields_list, int *initialized,
const char *config_key)
{
if (!*initialized) {
fields_list->cmp = strcasecmp;
fields_from_config(fields_list, config_key);
*initialized = 1;
}
return fields_list;
}
static struct string_list *fields_sent(void)
{
static struct string_list fields_list = STRING_LIST_INIT_NODUP;
static int initialized;
if (!initialized) {
fields_list.cmp = strcasecmp;
fields_from_config(&fields_list, "promisor.sendFields");
initialized = 1;
}
return &fields_list;
return initialize_fields_list(&fields_list, &initialized, "promisor.sendFields");
}
static struct string_list *fields_checked(void)
@@ -394,13 +400,7 @@ static struct string_list *fields_checked(void)
static struct string_list fields_list = STRING_LIST_INIT_NODUP;
static int initialized;
if (!initialized) {
fields_list.cmp = strcasecmp;
fields_from_config(&fields_list, "promisor.checkFields");
initialized = 1;
}
return &fields_list;
return initialize_fields_list(&fields_list, &initialized, "promisor.checkFields");
}
/*