From: eap Date: Fri, 17 Sep 2010 05:35:42 +0000 (+0000) Subject: 0020982: EDF 1547 SMESH: Creation of non-conformal quadratic pyramids X-Git-Tag: V5_1_5a1~40 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=e0baca518ca2fcd516f8e27d01ddef9de758b0df;p=modules%2Fsmesh.git 0020982: EDF 1547 SMESH: Creation of non-conformal quadratic pyramids Fix fillAncestorsMap(theShape) for the case if a sub-shape of theShape is not in _mapAncestors --- diff --git a/src/SMESH/SMESH_Mesh.cxx b/src/SMESH/SMESH_Mesh.cxx index b37c0e646..d7fb290db 100644 --- a/src/SMESH/SMESH_Mesh.cxx +++ b/src/SMESH/SMESH_Mesh.cxx @@ -1615,6 +1615,7 @@ void SMESH_Mesh::fillAncestorsMap(const TopoDS_Shape& theShape) for ( desType = TopAbs_VERTEX; desType >= memberType; desType-- ) for (TopExp_Explorer des( theShape, TopAbs_ShapeEnum( desType )); des.More(); des.Next()) { + if ( !_mapAncestors.Contains( des.Current() )) continue;// issue 0020982 TopTools_ListOfShape& ancList = _mapAncestors.ChangeFromKey( des.Current() ); TopTools_ListIteratorOfListOfShape ancIt (ancList); while ( ancIt.More() && ancIt.Value().ShapeType() >= memberType )