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>

Christian Couder committed Feb 16, 2026 at 14:23 UTC a7d430d5b50bb37adae783ec29539cb76cbcc406
1 file changed +14 -14
promisor-remote.c
+14 -14
@@ -375,18 +375,24 @@ static char *fields_from_config(struct string_list *fields_list, const char *con
375 return fields;
376 }
377
378 +static struct string_list *initialize_fields_list(struct string_list *fields_list, int *initialized,
379 + const char *config_key)
380 +{
381 + if (!*initialized) {
382 + fields_list->cmp = strcasecmp;
383 + fields_from_config(fields_list, config_key);
384 + *initialized = 1;
385 + }
386 +
387 + return fields_list;
388 +}
389 +
390 static struct string_list *fields_sent(void)
391 {
392 static struct string_list fields_list = STRING_LIST_INIT_NODUP;
393 static int initialized;
394
383 - if (!initialized) {
384 - fields_list.cmp = strcasecmp;
385 - fields_from_config(&fields_list, "promisor.sendFields");
386 - initialized = 1;
387 - }
388 -
389 - return &fields_list;
395 + return initialize_fields_list(&fields_list, &initialized, "promisor.sendFields");
396 }
397
398 static struct string_list *fields_checked(void)
@@ -394,13 +400,7 @@ static struct string_list *fields_checked(void)
400 static struct string_list fields_list = STRING_LIST_INIT_NODUP;
401 static int initialized;
402
397 - if (!initialized) {
398 - fields_list.cmp = strcasecmp;
399 - fields_from_config(&fields_list, "promisor.checkFields");
400 - initialized = 1;
401 - }
402 -
403 - return &fields_list;
403 + return initialize_fields_list(&fields_list, &initialized, "promisor.checkFields");
404 }
405
406 /*