From 8643ece345ffcab609cb672dc6a99993c4396af2 Mon Sep 17 00:00:00 2001 From: nicm Date: Mon, 13 May 2024 11:45:05 +0000 Subject: [PATCH] Fix memory leak, from Fadi Afani. --- arguments.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/arguments.c b/arguments.c index 5e970738..f4da6458 100644 --- a/arguments.c +++ b/arguments.c @@ -164,15 +164,17 @@ args_parse_flag_argument(struct args_value *values, u_int count, char **cause, argument = &values[*i]; if (argument->type != ARGS_STRING) { xasprintf(cause, "-%c argument must be a string", flag); + args_free_value(new); + free(new); return (-1); } } if (argument == NULL) { + args_free_value(new); + free(new); if (optional_argument) { log_debug("%s: -%c (optional)", __func__, flag); args_set(args, flag, NULL, ARGS_ENTRY_OPTIONAL_VALUE); - args_free_value(new); - free(new); return (0); /* either - or end */ } xasprintf(cause, "-%c expects an argument", flag); -- 2.11.4.GIT