From e3cd5660756223bbe4a2ab607ef019bbf5e9daf9 Mon Sep 17 00:00:00 2001 From: Nick Alcock Date: Wed, 12 Jun 2024 12:28:45 +0100 Subject: libctf: fix dict leak on archive-wide symbol lookup error path If a lookup fails for a reason unrelated to a lack of type data for this symbol, we return with an error; but we fail to close the dict we opened most recently, which is leaked. libctf/ * ctf-archive.c (ctf_arc_lookup_sym_or_name): Close dict. --- libctf/ctf-archive.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libctf/ctf-archive.c b/libctf/ctf-archive.c index f459c02..4744cb7 100644 --- a/libctf/ctf-archive.c +++ b/libctf/ctf-archive.c @@ -957,6 +957,7 @@ ctf_arc_lookup_sym_or_name (ctf_archive_t *wrapper, unsigned long symidx, { if (errp) *errp = ctf_errno (fp); + ctf_dict_close (fp); ctf_next_destroy (i); return NULL; /* errno is set for us. */ } -- cgit v1.1