aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Brobecker <brobecker@gnat.com>2012-10-16 22:47:03 +0000
committerJoel Brobecker <brobecker@gnat.com>2012-10-16 22:47:03 +0000
commite3f9f6d81805e5f43a8275edc52d2d34069015d4 (patch)
tree1eacad8c4fefec14bde4aa40166da2a25d6c73c7
parentae034989da9cc0805cb02a6bd53f4fce3a5adfe9 (diff)
downloadgdb-e3f9f6d81805e5f43a8275edc52d2d34069015d4.zip
gdb-e3f9f6d81805e5f43a8275edc52d2d34069015d4.tar.gz
gdb-e3f9f6d81805e5f43a8275edc52d2d34069015d4.tar.bz2
Dangling bfd pointer in archive cache.
This dandling pointer eventually leads to a crash when trying to run on ppc-aix a program using threading... bfd/ChangeLog: * coff-rs6000.c (rs6000coff_vec): Set _close_and_cleanup field to _bfd_archive_close_and_cleanup. (pmac_xcoff_vec): Likewise.
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/coff-rs6000.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 29cb5c6..da4262b 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2012-10-16 Joel Brobecker <brobecker@adacore.com>
+
+ * coff-rs6000.c (rs6000coff_vec): Set _close_and_cleanup
+ field to _bfd_archive_close_and_cleanup.
+ (pmac_xcoff_vec): Likewise.
+
2012-10-16 Sofiane Naci <sofiane.naci@arm.com>
* elf64-aarch64.c (elf64_aarch64_tls_howto_table): Fix shift value for
diff --git a/bfd/coff-rs6000.c b/bfd/coff-rs6000.c
index edbef95..0945aca 100644
--- a/bfd/coff-rs6000.c
+++ b/bfd/coff-rs6000.c
@@ -4076,7 +4076,7 @@ const bfd_target rs6000coff_vec =
},
/* Generic */
- bfd_true,
+ _bfd_archive_close_and_cleanup,
bfd_true,
coff_new_section_hook,
_bfd_generic_get_section_contents,
@@ -4332,7 +4332,7 @@ const bfd_target pmac_xcoff_vec =
},
/* Generic */
- bfd_true,
+ _bfd_archive_close_and_cleanup,
bfd_true,
coff_new_section_hook,
_bfd_generic_get_section_contents,