[binutils-gdb] coff object_p memory leaks
Alan Modra
amodra@sourceware.org
Mon Dec 30 13:22:00 GMT 2019
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=37d5ab199b072e3cf1e8bf2a9262767c4737d256
commit 37d5ab199b072e3cf1e8bf2a9262767c4737d256
Author: Alan Modra <amodra@gmail.com>
Date: Mon Dec 30 21:17:08 2019 +1030
coff object_p memory leaks
* coffgen.c (coff_real_object_p): Free malloc'd memory on failure.
Diff:
---
bfd/ChangeLog | 4 ++++
bfd/coffgen.c | 3 +++
2 files changed, 7 insertions(+)
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 186346e..809f1ba 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,9 @@
2019-12-30 Alan Modra <amodra@gmail.com>
+ * coffgen.c (coff_real_object_p): Free malloc'd memory on failure.
+
+2019-12-30 Alan Modra <amodra@gmail.com>
+
* archive.c (do_slurp_bsd_armap): Use bfd_alloc rather than
bfd_zalloc when memory is all written after the call.
(do_slurp_coff_armap): Likewise. Set bfd_error on ridiculously
diff --git a/bfd/coffgen.c b/bfd/coffgen.c
index 57a18b0..34d8d50 100644
--- a/bfd/coffgen.c
+++ b/bfd/coffgen.c
@@ -305,6 +305,9 @@ coff_real_object_p (bfd *abfd,
return abfd->xvec;
fail:
+ obj_coff_keep_syms (abfd) = FALSE;
+ obj_coff_keep_strings (abfd) = FALSE;
+ _bfd_coff_free_symbols (abfd);
bfd_release (abfd, tdata);
fail2:
abfd->tdata.any = tdata_save;
More information about the Binutils-cvs
mailing list