From: H.J. Lu Date: Mon, 2 May 2005 14:00:16 +0000 (+0000) Subject: 2005-05-02 H.J. Lu X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a31501e943401ca0a9af945cf73e78bc105de6bb;p=binutils-gdb.git 2005-05-02 H.J. Lu * elf.c (_bfd_elf_new_section_hook): Don't call _bfd_elf_get_sec_type_attr on sections from input files. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index e9925a67635..f4c8450d56f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2005-05-02 H.J. Lu + + * elf.c (_bfd_elf_new_section_hook): Don't call + _bfd_elf_get_sec_type_attr on sections from input files. + 2005-05-02 H.J. Lu * merge.c (sec_merge_init): Call bfd_hash_table_init_n with diff --git a/bfd/elf.c b/bfd/elf.c index ba66cd48f31..2af5a8964b6 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -2245,12 +2245,17 @@ _bfd_elf_new_section_hook (bfd *abfd, asection *sec) sec->used_by_bfd = sdata; } - elf_section_type (sec) = SHT_NULL; - ssect = _bfd_elf_get_sec_type_attr (abfd, sec->name); - if (ssect != NULL) + /* When we read a file, we don't need section type and flags. + They will be overridden in _bfd_elf_make_section_from_shdr + anyway. */ + if (abfd->direction != read_direction) { - elf_section_type (sec) = ssect->type; - elf_section_flags (sec) = ssect->attr; + ssect = _bfd_elf_get_sec_type_attr (abfd, sec->name); + if (ssect != NULL) + { + elf_section_type (sec) = ssect->type; + elf_section_flags (sec) = ssect->attr; + } } /* Indicate whether or not this section should use RELA relocations. */