[binutils-gdb] gnu_debuglink related memory leak
Alan Modra
amodra@sourceware.org
Wed Jan 1 12:46:36 GMT 2025
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=822bda23f618286724e449815c8da8cde03e32e0
commit 822bda23f618286724e449815c8da8cde03e32e0
Author: Alan Modra <amodra@gmail.com>
Date: Wed Jan 1 22:52:41 2025 +1030
gnu_debuglink related memory leak
* opncls.c (bfd_fill_in_gnu_debuglink_section): Free section
contents on success too.
Diff:
---
bfd/opncls.c | 13 ++++---------
1 file changed, 4 insertions(+), 9 deletions(-)
diff --git a/bfd/opncls.c b/bfd/opncls.c
index fb0bca7689a..a0b30f568d7 100644
--- a/bfd/opncls.c
+++ b/bfd/opncls.c
@@ -1768,7 +1768,7 @@ bfd_fill_in_gnu_debuglink_section (bfd *abfd,
debuglink_size &= ~3;
debuglink_size += 4;
- contents = (char *) bfd_malloc (debuglink_size);
+ contents = bfd_malloc (debuglink_size);
if (contents == NULL)
{
/* XXX Should we delete the section from the bfd ? */
@@ -1781,14 +1781,9 @@ bfd_fill_in_gnu_debuglink_section (bfd *abfd,
bfd_put_32 (abfd, crc32, contents + crc_offset);
- if (! bfd_set_section_contents (abfd, sect, contents, 0, debuglink_size))
- {
- /* XXX Should we delete the section from the bfd ? */
- free (contents);
- return false;
- }
-
- return true;
+ bool ret = bfd_set_section_contents (abfd, sect, contents, 0, debuglink_size);
+ free (contents);
+ return ret;
}
/* Finds the build-id associated with @var{abfd}. If the build-id is
More information about the Binutils-cvs
mailing list