From 946748d5ed1d218adfccd523be9fdf280adfe434 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Thu, 25 Jun 2015 12:12:43 -0700 Subject: [PATCH] Don't set sh_size for .shstrtab twice _bfd_elf_assign_file_positions_for_non_load will set the sh_size field for .shstrtab section. There is need to initialize it in _bfd_elf_compute_section_file_positions. * elf.c (_bfd_elf_compute_section_file_positions): Don't initialize sh_size for .shstrtab here. --- bfd/ChangeLog | 5 +++++ bfd/elf.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 321d86f0af..8724de43f1 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2015-06-25 H.J. Lu + + * elf.c (_bfd_elf_compute_section_file_positions): Don't + initialize sh_size for .shstrtab here. + 2015-06-25 H.J. Lu PR gas/18451 diff --git a/bfd/elf.c b/bfd/elf.c index 4020961a6a..98460467d0 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -3772,7 +3772,7 @@ _bfd_elf_compute_section_file_positions (bfd *abfd, shstrtab_hdr->sh_type = SHT_STRTAB; shstrtab_hdr->sh_flags = 0; shstrtab_hdr->sh_addr = 0; - shstrtab_hdr->sh_size = _bfd_elf_strtab_size (elf_shstrtab (abfd)); + /* sh_size is set in _bfd_elf_assign_file_positions_for_non_load. */ shstrtab_hdr->sh_entsize = 0; shstrtab_hdr->sh_link = 0; shstrtab_hdr->sh_info = 0;