[binutils-gdb] Re: binary outsymbols
Alan Modra
amodra@sourceware.org
Sat Jan 18 00:31:19 GMT 2025
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=26dd9cb647140db87a5a530fd9f044d356e081de
commit 26dd9cb647140db87a5a530fd9f044d356e081de
Author: Alan Modra <amodra@gmail.com>
Date: Sat Jan 18 10:55:22 2025 +1030
Re: binary outsymbols
The "of course to free outsymbols" turned out to be wrong. outsymbols
belongs to objcopy which frees them, so commit 6ca01b0bdd59 introduced
a double free.
* srec.c (srec_write_symbols): Don't free outsymbols.
* tekhex.c (tekhex_write_object_contents): Likewise.
Diff:
---
bfd/srec.c | 4 ----
bfd/tekhex.c | 4 ----
2 files changed, 8 deletions(-)
diff --git a/bfd/srec.c b/bfd/srec.c
index a7ccf232531..1509bebd6c1 100644
--- a/bfd/srec.c
+++ b/bfd/srec.c
@@ -1114,13 +1114,9 @@ srec_write_symbols (bfd *abfd)
goto fail;
}
- free (abfd->outsymbols);
- abfd->outsymbols = NULL;
return true;
fail:
- free (abfd->outsymbols);
- abfd->outsymbols = NULL;
return false;
}
diff --git a/bfd/tekhex.c b/bfd/tekhex.c
index ef2bb25fe46..aab0b2f5592 100644
--- a/bfd/tekhex.c
+++ b/bfd/tekhex.c
@@ -886,13 +886,9 @@ tekhex_write_object_contents (bfd *abfd)
/* And the terminator. */
if (bfd_write ("%0781010\n", 9, abfd) != 9)
goto fail;
- free (abfd->outsymbols);
- abfd->outsymbols = NULL;
return true;
fail:
- free (abfd->outsymbols);
- abfd->outsymbols = NULL;
return false;
}
More information about the Binutils-cvs
mailing list