summaryrefslogtreecommitdiff
path: root/gdb/solib.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/solib.c')
-rw-r--r--gdb/solib.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gdb/solib.c b/gdb/solib.c
index b9ddd049b0..fc07f60a6d 100644
--- a/gdb/solib.c
+++ b/gdb/solib.c
@@ -764,7 +764,9 @@ solib_read_symbols (struct so_list *so, symfile_add_flags flags)
{
section_addr_info sap
= build_section_addr_info_from_section_table (*so->sections);
- so->objfile = symbol_file_add_from_bfd (so->abfd, so->so_name,
+ gdb_bfd_ref_ptr tmp_bfd
+ (gdb_bfd_ref_ptr::new_reference (so->abfd));
+ so->objfile = symbol_file_add_from_bfd (tmp_bfd, so->so_name,
flags, &sap,
OBJF_SHARED, NULL);
so->objfile->addr_low = so->addr_low;