diff options
-rw-r--r-- | gold/ChangeLog | 5 | ||||
-rw-r--r-- | gold/reloc.cc | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index ba1e407..08429b7 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,8 @@ +2011-05-30 Ian Lance Taylor <iant@google.com> + + * reloc.cc (Sized_relobj_file::do_read_relocs): Ignore empty reloc + sections. + 2011-05-29 Ian Lance Taylor <iant@google.com> PR gold/12804 diff --git a/gold/reloc.cc b/gold/reloc.cc index 97ed337..dacab35 100644 --- a/gold/reloc.cc +++ b/gold/reloc.cc @@ -322,6 +322,9 @@ Sized_relobj_file<size, big_endian>::do_read_relocs(Read_relocs_data* rd) off_t sh_size = shdr.get_sh_size(); + if (sh_size == 0) + continue; + unsigned int reloc_size; if (sh_type == elfcpp::SHT_REL) reloc_size = elfcpp::Elf_sizes<size>::rel_size; |