Subject: Re: [PATCH v2 1/6] test-ref-store: plug memory leak in cmd_delete_refs

From: Junio C Hamano <[email-masked]>
Date: Mon, 29 Nov 2021 15:15:16 -0800

"Han-Wen Nienhuys via GitGitGadget" <[email-masked]> writes:

> From: Han-Wen Nienhuys <[email-masked]>
>
> Signed-off-by: Han-Wen Nienhuys <[email-masked]>
> ---
>  t/helper/test-ref-store.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/t/helper/test-ref-store.c b/t/helper/test-ref-store.c
> index b314b81a45b..ccc2bb01bf3 100644
> --- a/t/helper/test-ref-store.c
> +++ b/t/helper/test-ref-store.c
> @@ -86,11 +86,13 @@ static int cmd_delete_refs(struct ref_store *refs, const char **argv)
>  	unsigned int flags = arg_flags(*argv++, "flags");
>  	const char *msg = *argv++;
>  	struct string_list refnames = STRING_LIST_INIT_NODUP;
> -
> +	int result;

Thanks, but let's not lose the blank line between the declarations
and the first statement, which serves for readability.

>  	while (*argv)
>  		string_list_append(&refnames, *argv++);
>  
> -	return refs_delete_refs(refs, msg, &refnames, flags);
> +	result = refs_delete_refs(refs, msg, &refnames, flags);
> +	string_list_clear(&refnames, 0);
> +	return result;
>  }
>  
>  static int cmd_rename_ref(struct ref_store *refs, const char **argv)