Mesh: make sure in VisitNeighbourFacets() and VisitNeighbourFacetsOverCorners() that start index is within the valid range

This commit is contained in:
wmayer
2024-03-11 13:04:17 +01:00
committed by wwmayer
parent 9099d75884
commit 33cacc3fb0

View File

@@ -40,6 +40,10 @@ unsigned long MeshKernel::VisitNeighbourFacets(MeshFacetVisitor& rclFVisitor,
std::vector<FacetIndex>::iterator clCurrIter;
MeshFacetArray::_TConstIterator clCurrFacet, clNBFacet;
if (ulStartFacet >= _aclFacetArray.size()) {
return 0;
}
// pick up start point
clCurrentLevel.push_back(ulStartFacet);
_aclFacetArray[ulStartFacet].SetFlag(MeshFacet::VISIT);
@@ -98,6 +102,10 @@ unsigned long MeshKernel::VisitNeighbourFacetsOverCorners(MeshFacetVisitor& rclF
MeshFacetArray::_TConstIterator pFBegin = raclFAry.begin();
std::vector<FacetIndex> aclCurrentLevel, aclNextLevel;
if (ulStartFacet >= _aclFacetArray.size()) {
return 0;
}
aclCurrentLevel.push_back(ulStartFacet);
raclFAry[ulStartFacet].SetFlag(MeshFacet::VISIT);