summaryrefslogtreecommitdiff
path: root/gold/reloc.cc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2011-05-31 04:26:49 +0000
committerIan Lance Taylor <ian@airs.com>2011-05-31 04:26:49 +0000
commit8dbe1edcd323bb950802a9fb3286bb780d9c0d7f (patch)
tree8b0bbf58f705ef98a9ac89f6b9e79a56dffbd530 /gold/reloc.cc
parent9ad61fd62f5d45db978e65304a3a2963dc0c2910 (diff)
downloadbinutils-gdb-8dbe1edcd323bb950802a9fb3286bb780d9c0d7f.tar.gz
* reloc.cc (Sized_relobj_file::do_read_relocs): Ignore empty reloc
sections.
Diffstat (limited to 'gold/reloc.cc')
-rw-r--r--gold/reloc.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/gold/reloc.cc b/gold/reloc.cc
index 97ed33715a7..dacab35f672 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;