Salome HOME
23104: EDF SMESH: Pre-study for Netgen 5x
authoreap <eap@opencascade.com>
Fri, 7 Oct 2016 14:00:31 +0000 (17:00 +0300)
committereap <eap@opencascade.com>
Fri, 7 Oct 2016 14:00:31 +0000 (17:00 +0300)
  Regression of SALOME_TESTS/Grids/smesh/1D_mesh_AutomaticLength_00/A3

src/SMESH/SMESH_MesherHelper.cxx

index b9a0e942d0e97d5461a9bded7557d43e803ea694..e9e9f58b62b6a572fbe351c7693e6f1828c0e235 100644 (file)
@@ -2944,12 +2944,16 @@ bool SMESH_MesherHelper::IsReversedSubMesh (const TopoDS_Face& theFace)
             bool ok = true;
             double u0 = GetNodeU( TopoDS::Edge( E ), nn[0], nn[1], &ok );
             double u1 = GetNodeU( TopoDS::Edge( E ), nn[1], nn[0], &ok );
             bool ok = true;
             double u0 = GetNodeU( TopoDS::Edge( E ), nn[0], nn[1], &ok );
             double u1 = GetNodeU( TopoDS::Edge( E ), nn[1], nn[0], &ok );
-            // check that the 2 nodes are connected with a segment (IPAL53055)
-            const SMDS_MeshElement* seg;
-            if ( SMESHDS_SubMesh* sm = GetMeshDS()->MeshElements( E ))
-              if (( sm->NbElements() > 0 ) &&
-                  ( seg = GetMeshDS()->FindEdge( nn[0], nn[1] )))
-                ok = sm->Contains( seg );
+            if ( ok )
+            {
+              // check that the 2 nodes are connected with a segment (IPAL53055)
+              ok = false;
+              const SMDS_MeshElement* seg;
+              if ( SMESHDS_SubMesh* sm = GetMeshDS()->MeshElements( E ))
+                if (( sm->NbElements() > 0 ) &&
+                    ( seg = GetMeshDS()->FindEdge( nn[0], nn[1] )))
+                  ok = sm->Contains( seg );
+            }
             if ( ok )
             {
               isReversed = ( u0 > u1 );
             if ( ok )
             {
               isReversed = ( u0 > u1 );