X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESHUtils%2FSMESH_FreeBorders.cxx;h=ce7fb230f0c7c42d6d418dca969b9ae421e27b70;hb=HEAD;hp=d098604656bde77db45f5dd3de814c60cdbfd816;hpb=9d296302bce45a19ce73bcb52e86884ba38f1199;p=modules%2Fsmesh.git diff --git a/src/SMESHUtils/SMESH_FreeBorders.cxx b/src/SMESHUtils/SMESH_FreeBorders.cxx index d09860465..f1575ca25 100644 --- a/src/SMESHUtils/SMESH_FreeBorders.cxx +++ b/src/SMESHUtils/SMESH_FreeBorders.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -92,7 +92,7 @@ namespace myNodes[0] = node1->Node(); myNodes[1] = node2->Node(); myFace = face; - setId( ID ); // mesh element ID + setID( ID ); // mesh element ID } bool IsInGroup() const { @@ -444,7 +444,7 @@ void SMESH_MeshAlgos::FindCoincidentFreeBorders(SMDS_Mesh& mesh, CoincidentFreeBorders & foundFreeBordes) { // find free links - typedef NCollection_DataMap TLink2FaceMap; + typedef NCollection_DataMap TLink2FaceMap; TLink2FaceMap linkMap; int nbSharedLinks = 0; SMDS_FaceIteratorPtr faceIt = mesh.facesIterator(); @@ -840,7 +840,7 @@ void SMESH_MeshAlgos::FindFreeBorders(SMDS_Mesh& theMesh, bool isManifold = true; // find free links - typedef NCollection_DataMap TLink2FaceMap; + typedef NCollection_DataMap TLink2FaceMap; TLink2FaceMap linkMap; int nbSharedLinks = 0; SMDS_FaceIteratorPtr faceIt = theMesh.facesIterator(); @@ -946,7 +946,7 @@ void SMESH_MeshAlgos::FindFreeBorders(SMDS_Mesh& theMesh, ++cnt; bordNodes.resize( cnt + 1 ); - BEdge* beLast; + BEdge* beLast = 0; for ( be = borders[i], cnt = 0; be && cnt < bordNodes.size()-1; be = be->myNext, ++cnt ) @@ -954,6 +954,7 @@ void SMESH_MeshAlgos::FindFreeBorders(SMDS_Mesh& theMesh, bordNodes[ cnt ] = be->myBNode1->Node(); beLast = be; } - bordNodes.back() = beLast->myBNode2->Node(); + if ( beLast ) + bordNodes.back() = beLast->myBNode2->Node(); } }