Fix null dereference committed in r253277
[oota-llvm.git] / lib / DebugInfo / DWARF / DWARFUnit.cpp
index 53a149b1b23475a318b0c9ec260a45be58a8e18a..92ca2d4c3ff059d37bcd66d7552154441953c4a0 100644 (file)
@@ -38,8 +38,9 @@ DWARFUnit::DWARFUnit(DWARFContext &DC, const DWARFSection &Section,
                      const DWARFUnitIndex::Entry *IndexEntry)
     : Context(DC), InfoSection(Section), Abbrev(DA), RangeSection(RS),
       LineSection(LS), StringSection(SS), StringOffsetSection([&]() {
-        if (const auto *C = IndexEntry->getOffset(DW_SECT_STR_OFFSETS))
-          return SOS.slice(C->Offset, C->Offset + C->Length);
+        if (IndexEntry)
+          if (const auto *C = IndexEntry->getOffset(DW_SECT_STR_OFFSETS))
+            return SOS.slice(C->Offset, C->Offset + C->Length);
         return SOS;
       }()),
       AddrOffsetSection(AOS), isLittleEndian(LE), UnitSection(UnitSection),