Don't count str_offsets_table header size before DWARF 5
The header is not present in earlier versions of split dwarf.
Change-Id: I8fde233268230cea157b2b3276f3cf05190962f2
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/3083253
Reviewed-by: Sterling Augustine <saugustine@google.com>
diff --git a/src/common/dwarf/dwarf2reader.cc b/src/common/dwarf/dwarf2reader.cc
index 5850fb7..aa4ec2b 100644
--- a/src/common/dwarf/dwarf2reader.cc
+++ b/src/common/dwarf/dwarf2reader.cc
@@ -457,7 +457,7 @@
uint64_t dieoffset, enum DwarfAttribute attr, enum DwarfForm form,
uint64_t str_index) {
const size_t kStringOffsetsTableHeaderSize =
- reader_->OffsetSize() == 8 ? 16 : 8;
+ header_.version >= 5 ? (reader_->OffsetSize() == 8 ? 16 : 8) : 0;
const uint8_t* str_offsets_table_after_header = str_offsets_base_ ?
str_offsets_buffer_ + str_offsets_base_ :
str_offsets_buffer_ + kStringOffsetsTableHeaderSize;