Hi Aaron, On Sun, Sep 07, 2025 at 10:17:29PM -0400, Aaron Merey wrote: > Within create_dwfl, if dwfl_begin is successful but dwfl_report_offline > fails, the dwfl * pointer being reported is reset to NULL without calling > dwfl_end, causing a memory leak. > > Update create_dwfl to call dwfl_end in this case, preventing the leak. > > Signed-off-by: Aaron Merey <[email protected]> > --- > src/readelf.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/src/readelf.c b/src/readelf.c > index 6b886c59..138ded6b 100644 > --- a/src/readelf.c > +++ b/src/readelf.c > @@ -978,6 +978,7 @@ create_dwfl (int fd, const char *fname) > error (0, 0, _("failed reading '%s': %s"), > fname, dwfl_errmsg (-1)); > close (dwfl_fd); /* Consumed on success, not on failure. > */ > + dwfl_end (dwfl); > dwfl = NULL; > } > else
This looks obviously correct to me. Thanks, Mark
