]> SALOME platform Git repositories - modules/smesh.git/commitdiff
Salome HOME
22261: EDF 2698 SMESH: Memory leak when displaying 2D quadratic elements as arcs
authoreap <eap@opencascade.com>
Thu, 25 Jul 2013 09:00:54 +0000 (09:00 +0000)
committereap <eap@opencascade.com>
Thu, 25 Jul 2013 09:00:54 +0000 (09:00 +0000)
In createSubMesh() fix getting a sub-mesh ID for a a sub-mesh on group

src/SMESH_I/SMESH_Mesh_i.cxx

index 979a572ad0a33b3222d59b8153a52831d4edc39a..735ab2ef7ee48d3bd7eae602576491fb43ffae40 100644 (file)
@@ -2120,10 +2120,10 @@ SMESH::SMESH_Group_ptr SMESH_Mesh_i::ConvertToStandalone( SMESH::SMESH_GroupBase
 SMESH::SMESH_subMesh_ptr SMESH_Mesh_i::createSubMesh( GEOM::GEOM_Object_ptr theSubShapeObject )
 {
   if(MYDEBUG) MESSAGE( "createSubMesh" );
-  TopoDS_Shape myLocSubShape = _gen_i->GeomObjectToShape(theSubShapeObject);
-  const int        subMeshId = _impl->GetMeshDS()->ShapeToIndex( myLocSubShape );
+  TopoDS_Shape  myLocSubShape = _gen_i->GeomObjectToShape(theSubShapeObject);
+  ::SMESH_subMesh * mySubMesh = _impl->GetSubMesh(myLocSubShape);
+  const int         subMeshId = mySubMesh->GetId();
 
-  ::SMESH_subMesh *      mySubMesh = _impl->GetSubMesh(myLocSubShape);
   SMESH_subMesh_i * subMeshServant = new SMESH_subMesh_i(myPOA, _gen_i, this, subMeshId);
   SMESH::SMESH_subMesh_var subMesh = subMeshServant->_this();