Salome HOME
23348: EDF 12916 - SALOME crashes when generating pyramids
authoreap <eap@opencascade.com>
Fri, 9 Sep 2016 11:34:29 +0000 (14:34 +0300)
committereap <eap@opencascade.com>
Fri, 9 Sep 2016 11:34:29 +0000 (14:34 +0300)
src/SMESHUtils/SMESH_MeshAlgos.cxx

index e65e201..dbadd82 100644 (file)
@@ -987,16 +987,19 @@ TopAbs_State SMESH_ElementSearcherImpl::GetPointState(const gp_Pnt& point)
 
           // skip tangent intersections
           int nbTgt = 0;
-          const SMDS_MeshElement* prevFace = u_int1->second._face;
-          while ( ok && u_int2->second._coincides )
+          if ( u_int2 != u2inters.end() )
           {
-            if ( SMESH_MeshAlgos::GetCommonNodes(prevFace , u_int2->second._face).empty() )
-              ok = false;
-            else
+            const SMDS_MeshElement* prevFace = u_int1->second._face;
+            while ( ok && u_int2->second._coincides )
             {
-              nbTgt++;
-              u_int2++;
-              ok = ( u_int2 != u2inters.end() );
+              if ( SMESH_MeshAlgos::GetCommonNodes(prevFace , u_int2->second._face).empty() )
+                ok = false;
+              else
+              {
+                nbTgt++;
+                u_int2++;
+                ok = ( u_int2 != u2inters.end() );
+              }
             }
           }
           if ( !ok ) break;