aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Fortune <matthew.fortune@imgtec.com>2014-11-05 10:56:59 +0000
committerMatthew Fortune <matthew.fortune@imgtec.com>2014-11-05 10:56:59 +0000
commit131e2f8ea152c814af559df088a0d3019f7f45f2 (patch)
tree6b0b43395baeec27fc67aeafb8fb4ef404efaea1
parent09c14161c5bbba3a3969a48efafbff3b9a4de42a (diff)
downloadgdb-131e2f8ea152c814af559df088a0d3019f7f45f2.zip
gdb-131e2f8ea152c814af559df088a0d3019f7f45f2.tar.gz
gdb-131e2f8ea152c814af559df088a0d3019f7f45f2.tar.bz2
Fix segfault when creating a dso with discarded .dynsym section.
bfd/ * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Fix segfault when creating a dso with discarded dynsym section.
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elfxx-mips.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 8df2fd7..721db9b 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2014-11-05 James Cowgill <james.cowgill@imgtec.com>
+
+ * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Fix segfault
+ when creating a dso with discarded dynsym section.
+
2014-11-05 Matthew Fortune <matthew.fortune@imgtec.com>
* elfxx-mips.c (update_mips_abiflags_isa): Add E_MIPS_ARCH_32R6
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index c599366..a88d173 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -11457,9 +11457,11 @@ _bfd_mips_elf_finish_dynamic_sections (bfd *output_bfd,
name = ".dynsym";
elemsize = MIPS_ELF_SYM_SIZE (output_bfd);
s = bfd_get_section_by_name (output_bfd, name);
- BFD_ASSERT (s != NULL);
- dyn.d_un.d_val = s->size / elemsize;
+ if (s != NULL)
+ dyn.d_un.d_val = s->size / elemsize;
+ else
+ dyn.d_un.d_val = 0;
break;
case DT_MIPS_HIPAGENO: