From 08feb38723f0035556b7bb2592dec3af2a096ae1 Mon Sep 17 00:00:00 2001 From: dmv Date: Fri, 10 Sep 2010 11:07:46 +0000 Subject: [PATCH] Win TC5.1.4 bugs 20861, 21984 --- src/SMESH_I/SMESH_Group_i.hxx | 2 +- src/SMESH_I/SMESH_Mesh_i.cxx | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/SMESH_I/SMESH_Group_i.hxx b/src/SMESH_I/SMESH_Group_i.hxx index 30ea828c0..2ecbdb0b8 100644 --- a/src/SMESH_I/SMESH_Group_i.hxx +++ b/src/SMESH_I/SMESH_Group_i.hxx @@ -92,7 +92,7 @@ private: int myLocalID; void changeLocalId(int localId) { myLocalID = localId; } - friend void SMESH_Mesh_i::CheckGeomGroupModif(); + friend SMESH_Mesh_i; }; // ====== diff --git a/src/SMESH_I/SMESH_Mesh_i.cxx b/src/SMESH_I/SMESH_Mesh_i.cxx index db5a82c11..3b15dbfbb 100644 --- a/src/SMESH_I/SMESH_Mesh_i.cxx +++ b/src/SMESH_I/SMESH_Mesh_i.cxx @@ -121,11 +121,13 @@ SMESH_Mesh_i::~SMESH_Mesh_i() INFOS("~SMESH_Mesh_i"); map::iterator it; for ( it = _mapGroups.begin(); it != _mapGroups.end(); it++ ) { + if ( CORBA::is_nil( it->second )) + continue; SMESH_GroupBase_i* aGroup = dynamic_cast( SMESH_Gen_i::GetServant( it->second ).in() ); if ( aGroup ) { // this method is colled from destructor of group (PAL6331) //_impl->RemoveGroup( aGroup->GetLocalID() ); - + aGroup->myMeshServant = 0; aGroup->Destroy(); } } -- 2.39.2