From: Alan Modra Date: Wed, 6 Oct 2021 07:58:47 +0000 (+1030) Subject: PR28422, build_id use-after-free X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6d661cdc5be46e890ed9255e749806f46a88e26c;p=binutils-gdb.git PR28422, build_id use-after-free This fixes a bug in commit 5d9bbb73c1df. All fields preserved from a bfd in struct bfd_preserve need to be cleared in bfd_reinit. PR 28422 * format.c (bfd_reinit): Clear build_id. --- diff --git a/bfd/format.c b/bfd/format.c index 5d08d1d642c..408c984690e 100644 --- a/bfd/format.c +++ b/bfd/format.c @@ -151,6 +151,7 @@ bfd_reinit (bfd *abfd, unsigned int section_id, bfd_cleanup cleanup) abfd->tdata.any = NULL; abfd->arch_info = &bfd_default_arch_struct; abfd->flags &= BFD_FLAGS_SAVED; + abfd->build_id = NULL; bfd_section_list_clear (abfd); }