From: Paul RASCLE Date: Mon, 19 Feb 2018 15:25:13 +0000 (+0100) Subject: message 'unknown exception' while several mesh in parallel is not relevant X-Git-Tag: V8_5_0a2~4 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=cc0ac1b47c4f38f151065512fb4021b07d4d850a;p=modules%2Fsmesh.git message 'unknown exception' while several mesh in parallel is not relevant --- diff --git a/src/SMESH_I/SMESH_Gen_i.cxx b/src/SMESH_I/SMESH_Gen_i.cxx index b29e9a901..834b5ce76 100644 --- a/src/SMESH_I/SMESH_Gen_i.cxx +++ b/src/SMESH_I/SMESH_Gen_i.cxx @@ -178,7 +178,23 @@ PortableServer::ServantBase_var SMESH_Gen_i::GetServant( CORBA::Object_ptr theOb PortableServer::Servant aServant = GetPOA()->reference_to_servant( theObject ); return aServant; } - catch (...) { + catch (PortableServer::POA::ObjectNotActive &ex) + { + INFOS("GetServant: ObjectNotActive"); + return NULL; + } + catch (PortableServer::POA::WrongAdapter &ex) + { + INFOS("GetServant: WrongAdapter: OK when several servants used to build several mesh in parallel..."); + return NULL; + } + catch (PortableServer::POA::WrongPolicy &ex) + { + INFOS("GetServant: WrongPolicy"); + return NULL; + } + catch (...) + { INFOS( "GetServant - Unknown exception was caught!!!" ); return NULL; } @@ -629,9 +645,11 @@ void SMESH_Gen_i::setCurrentStudy( SALOMEDS::Study_ptr theStudy, bool theStudyIsBeingClosed) { int curStudyId = GetCurrentStudyID(); + MESSAGE("curStudyId " << curStudyId); myCurrentStudy = SALOMEDS::Study::_duplicate( theStudy ); // create study context, if it doesn't exist and set current study int studyId = GetCurrentStudyID(); + MESSAGE("studyId " << studyId); if ( myStudyContextMap.find( studyId ) == myStudyContextMap.end() ) myStudyContextMap[ studyId ] = new StudyContext; @@ -645,6 +663,7 @@ void SMESH_Gen_i::setCurrentStudy( SALOMEDS::Study_ptr theStudy, // Let meshes update their data depending on GEOM groups that could change if ( curStudyId != studyId ) { + MESSAGE("curStudyId " << curStudyId << " studyId " << studyId); CORBA::String_var compDataType = ComponentDataType(); SALOMEDS::SComponent_wrap me = myCurrentStudy->FindComponent( compDataType.in() ); if ( !me->_is_nil() ) {