Index: courgette/disassembler_elf_32.cc |
diff --git a/courgette/disassembler_elf_32.cc b/courgette/disassembler_elf_32.cc |
index ff2b9e03b611cc42717aa96a2e7525023696a242..02a31eb6dd734f2353bb228c7847d2d8592e95e0 100644 |
--- a/courgette/disassembler_elf_32.cc |
+++ b/courgette/disassembler_elf_32.cc |
@@ -262,6 +262,9 @@ CheckBool DisassemblerElf32::ParseFile(AssemblyProgram* program) { |
const Elf32_Shdr *section_header = SectionHeader(section_id); |
+ if (section_header->sh_type == SHT_NOBITS) |
+ continue; |
+ |
if (!ParseSimpleRegion(file_offset, |
section_header->sh_offset, |
program)) |
@@ -282,8 +285,6 @@ CheckBool DisassemblerElf32::ParseFile(AssemblyProgram* program) { |
return false; |
file_offset = section_header->sh_offset + section_header->sh_size; |
break; |
- case SHT_NOBITS: |
- // Fall through |
case SHT_INIT_ARRAY: |
// Fall through |
case SHT_FINI_ARRAY: |