The success return value for data extractor's cursor
should also be checked.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@373319
91177308-0d34-0410-b5e6-
96231b3b80d8
uint32_t NChain = Data.getU32(Cur);
if (Content.size() != (2 + NBucket + NChain) * 4) {
S->Content = yaml::BinaryRef(Content);
- return S.release();
+ if (Cur)
+ return S.release();
+ llvm_unreachable("entries were not read correctly");
}
S->Bucket.emplace(NBucket);
for (uint32_t &V : *S->Chain)
V = Data.getU32(Cur);
- if (!Cur)
- llvm_unreachable("entries were not read correctly");
- return S.release();
+ if (Cur)
+ return S.release();
+ llvm_unreachable("entries were not read correctly");
}
template <class ELFT>