From e7e102a356c6ad710cd2878fe44826b8c76571ef Mon Sep 17 00:00:00 2001 From: David Korczynski Date: Fri, 22 Sep 2023 21:29:39 +0100 Subject: [PATCH] config_format: fix memory leak There can be multiple states needing to be popped in the event of errors. Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=61733 Signed-off-by: David Korczynski --- src/config_format/flb_cf_yaml.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/config_format/flb_cf_yaml.c b/src/config_format/flb_cf_yaml.c index 5fc42bdcb1d..2a571e59ea9 100644 --- a/src/config_format/flb_cf_yaml.c +++ b/src/config_format/flb_cf_yaml.c @@ -2039,7 +2039,9 @@ static int read_config(struct flb_cf *conf, struct local_ctx *ctx, } yaml_parser_delete(&parser); - state_pop(ctx); + + /* free all remaining states */ + while (state = state_pop(ctx)); fclose(fh); ctx->level--;