ctf_archive_next returns an opened dict, which must be closed by the caller.
Thanks to Alan Modra for spotting this.
binutils/
* objdump.c (dump_ctf): Close dict.
* readelf.c (dump_section_as_ctf): Likewise.
printf (_("Contents of CTF section %s:\n"), sanitize_string (sect_name));
while ((fp = ctf_archive_next (ctfa, &i, &name, 0, &err)) != NULL)
- dump_ctf_archive_member (fp, name, parent, member++);
+ {
+ dump_ctf_archive_member (fp, name, parent, member++);
+ ctf_dict_close (fp);
+ }
if (err != ECTF_NEXT_END)
{
dump_ctf_errs (NULL);
printable_section_name (filedata, section));
while ((fp = ctf_archive_next (ctfa, &i, &name, 0, &err)) != NULL)
- dump_ctf_archive_member (fp, name, parent, member++);
+ {
+ dump_ctf_archive_member (fp, name, parent, member++);
+ ctf_dict_close (fp);
+ }
if (err != ECTF_NEXT_END)
{
dump_ctf_errs (NULL);