Salome HOME
0021104: EDF 1715 SMESH: RotationSweepObject crashes Salome
authoreap <eap@opencascade.com>
Tue, 14 Dec 2010 13:51:14 +0000 (13:51 +0000)
committereap <eap@opencascade.com>
Tue, 14 Dec 2010 13:51:14 +0000 (13:51 +0000)
  fix makeWalls() for the case of the edge located on the rotation axis

src/SMESH/SMESH_MeshEditor.cxx

index d21d4784c712103ba63f4ad84efb7e5d0b4af120..198cf0f2da50310c81b584dadef6b9cf30c9d36e 100644 (file)
@@ -3885,6 +3885,8 @@ void SMESH_MeshEditor::makeWalls (TNodeOfNodeListMap &     mapNewNodes,
     const SMDS_MeshElement* elem = itElem->first;
     vector<TNodeOfNodeListMapItr>& vecNewNodes = itElemNodes->second;
 
+    if(itElem->second.size()==0) continue;
+
     if ( elem->GetType() == SMDSAbs_Edge ) {
       // create a ceiling edge
       if (!elem->IsQuadratic()) {
@@ -3909,8 +3911,6 @@ void SMESH_MeshEditor::makeWalls (TNodeOfNodeListMap &     mapNewNodes,
     if ( elem->GetType() != SMDSAbs_Face )
       continue;
 
-    if(itElem->second.size()==0) continue;
-
     bool hasFreeLinks = false;
 
     TIDSortedElemSet avoidSet;