From af649b169a62aebff972ea1b7adf5877239aa7a9 Mon Sep 17 00:00:00 2001 From: Seyi Kufoiji Date: Mon, 2 Mar 2026 21:00:17 +0100 Subject: [PATCH] sequencer: use oidmap_clear_with_free() for string_entry cleanup Switch cleanup of the string_entry oidmap to oidmap_clear_with_free() and introduce a free_string_entry() helper to properly free each allocated struct string_entry. This aligns with the ongoing migration to use the callback-based oidmap cleanup API. Signed-off-by: Seyi Kuforiji Signed-off-by: Junio C Hamano --- sequencer.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sequencer.c b/sequencer.c index 1f492f8460..0a9287dc23 100644 --- a/sequencer.c +++ b/sequencer.c @@ -5654,6 +5654,12 @@ struct string_entry { char string[FLEX_ARRAY]; }; +static void free_string_entry(void *e) +{ + struct string_entry *entry = container_of(e, struct string_entry, entry); + free(entry); +} + struct label_state { struct oidmap commit2label; struct hashmap labels; @@ -6044,8 +6050,8 @@ static int make_script_with_merges(struct pretty_print_context *pp, oidset_clear(&interesting); oidset_clear(&child_seen); oidset_clear(&shown); - oidmap_clear(&commit2todo, 1); - oidmap_clear(&state.commit2label, 1); + oidmap_clear_with_free(&commit2todo, free_string_entry); + oidmap_clear_with_free(&state.commit2label, free_string_entry); hashmap_clear_and_free(&state.labels, struct labels_entry, entry); strbuf_release(&state.buf);