summaryrefslogtreecommitdiff
path: root/bfd/opncls.c
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2012-08-07 13:47:13 +0000
committerNick Clifton <nickc@redhat.com>2012-08-07 13:47:13 +0000
commit9eae5acd8cbf611e3f2fe496d241d224fd462ecd (patch)
treeda00dd76c29eda814ba4a4dd9c27cb7f2a3d568d /bfd/opncls.c
parentb6207acb286413d8b1c54d4c6ab6912fe4ac6ac9 (diff)
downloadbinutils-redhat-9eae5acd8cbf611e3f2fe496d241d224fd462ecd.tar.gz
* config/tc-i386.c (lex_got): Provide implementation for PE
format. * gas/i386/secrel.s: Add test of <symbol>@SECREL32. * gas/i386/secrel.d: Add expected disassembly. * scripttempl/pe.sc (R_TLS): Add .tls$AAA and .tls$ZZZ. * scripttempl/pep.sc (R_TLS): Add .tls$AAA and .tls$ZZZ. * archive.c (_bfd_delete_archive_data): New function. * libbfd-in.h (_bfd_delete_archive_data): Declare. * libbfd.h: Rebuild. * opncls.c (_bfd_delete_bfd): Call _bfd_delete_archive_data.
Diffstat (limited to 'bfd/opncls.c')
-rw-r--r--bfd/opncls.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/bfd/opncls.c b/bfd/opncls.c
index 0c02ee4e2b..e538981f6d 100644
--- a/bfd/opncls.c
+++ b/bfd/opncls.c
@@ -130,11 +130,15 @@ _bfd_new_bfd_contained_in (bfd *obfd)
static void
_bfd_delete_bfd (bfd *abfd)
{
+ if (abfd->format == bfd_archive)
+ _bfd_delete_archive_data (abfd);
+
if (abfd->memory)
{
bfd_hash_table_free (&abfd->section_htab);
objalloc_free ((struct objalloc *) abfd->memory);
}
+
free (abfd);
}