* layout.cc (Layout::include_section): Do not discard unrecognized

SHT_STRTAB sections.
This commit is contained in:
Ian Lance Taylor 2008-07-04 03:34:01 +00:00
parent fa4d55d059
commit 5cb66f97b7
2 changed files with 13 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2008-07-03 Ian Lance Taylor <iant@google.com>
* layout.cc (Layout::include_section): Do not discard unrecognized
SHT_STRTAB sections.
2008-06-30 Craig Silverstein <csilvers@cs.stanford.edu>
* script.cc (Lex::can_continue_name): Make '?' allowable in

View File

@ -210,12 +210,19 @@ Layout::include_section(Sized_relobj<size, big_endian>*, const char* name,
case elfcpp::SHT_NULL:
case elfcpp::SHT_SYMTAB:
case elfcpp::SHT_DYNSYM:
case elfcpp::SHT_STRTAB:
case elfcpp::SHT_HASH:
case elfcpp::SHT_DYNAMIC:
case elfcpp::SHT_SYMTAB_SHNDX:
return false;
case elfcpp::SHT_STRTAB:
// Discard the sections which have special meanings in the ELF
// ABI. Keep others (e.g., .stabstr). We could also do this by
// checking the sh_link fields of the appropriate sections.
return (strcmp(name, ".dynstr") != 0
&& strcmp(name, ".strtab") != 0
&& strcmp(name, ".shstrtab") != 0);
case elfcpp::SHT_RELA:
case elfcpp::SHT_REL:
case elfcpp::SHT_GROUP: