From: eap Date: Wed, 26 Feb 2020 08:59:42 +0000 (+0300) Subject: Fix regression of smesh/bugs_14/P7 X-Git-Tag: V9_5_0a1~2 X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=commitdiff_plain;h=0e63df0f0346e2f8fcb18081840355493223a05c Fix regression of smesh/bugs_14/P7 --- diff --git a/src/SMESH_I/SMESH_Mesh_i.cxx b/src/SMESH_I/SMESH_Mesh_i.cxx index 06b0abcde..aa25d7d07 100644 --- a/src/SMESH_I/SMESH_Mesh_i.cxx +++ b/src/SMESH_I/SMESH_Mesh_i.cxx @@ -2295,6 +2295,8 @@ void SMESH_Mesh_i::CheckGeomModif( bool isBreakLink ) if ( !geomClient ) return; GEOM::GEOM_Gen_var geomGen = _gen_i->GetGeomEngine( mainGO ); if ( geomGen->_is_nil() ) return; + CORBA::String_var geomComponentType = geomGen->ComponentDataType(); + bool isShaper = ( strcmp( geomComponentType.in(), "SHAPERSTUDY" ) == 0 ); CORBA::String_var ior = geomGen->GetStringFromIOR( mainGO ); geomClient->RemoveShapeFromBuffer( ior.in() ); @@ -2306,7 +2308,7 @@ void SMESH_Mesh_i::CheckGeomModif( bool isBreakLink ) _preMeshInfo->ForgetAllData(); - if (isBreakLink) + if ( isBreakLink || !isShaper ) _impl->Clear(); TopoDS_Shape newShape = _gen_i->GeomObjectToShape( mainGO ); if ( newShape.IsNull() ) @@ -2506,7 +2508,7 @@ void SMESH_Mesh_i::CheckGeomModif( bool isBreakLink ) _gen_i->UpdateIcons( me ); - if ( !isBreakLink ) + if ( !isBreakLink && isShaper ) { SALOMEDS::SObject_wrap meshSO = _gen_i->ObjectToSObject( me ); if ( !meshSO->_is_nil() )