Call _close_and_cleanup in bfd_close_all_done
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 30 Aug 2017 13:17:28 +0000 (06:17 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Wed, 30 Aug 2017 13:22:52 +0000 (06:22 -0700)
PR binutils/22032
* opncls.c (bfd_close_all_done): Call _close_and_cleanup.

bfd/ChangeLog
bfd/opncls.c

index bf509b6..4882260 100644 (file)
@@ -1,5 +1,10 @@
 2017-08-30  H.J. Lu  <hongjiu.lu@intel.com>
 
+       PR binutils/22032
+       * opncls.c (bfd_close_all_done): Call _close_and_cleanup.
+
+2017-08-30  H.J. Lu  <hongjiu.lu@intel.com>
+
        * elf64-x86-64.c (elf_x86_64_next_tls_desc_index): Removed.
        (elf_x86_64_srelplt2): Likewise.
 
index 913341c..b99ae72 100644 (file)
@@ -776,6 +776,9 @@ bfd_close_all_done (bfd *abfd)
 
   ret = bfd_cache_close (abfd);
 
+  if (! BFD_SEND (abfd, _close_and_cleanup, (abfd)))
+    return FALSE;
+
   if (ret)
     _maybe_make_executable (abfd);