fix dupming a nil servant

This commit is contained in:
eap 2011-05-05 15:16:02 +00:00
parent 4e647c5275
commit 15f3190af6

View File

@ -224,13 +224,15 @@ namespace SMESH
TPythonDump:: TPythonDump::
operator<<(SMESH::SMESH_IDSource_ptr theArg) operator<<(SMESH::SMESH_IDSource_ptr theArg)
{ {
if ( CORBA::is_nil( theArg ) )
return *this << "None";
SMESH_Gen_i* aSMESHGen = SMESH_Gen_i::GetSMESHGen(); SMESH_Gen_i* aSMESHGen = SMESH_Gen_i::GetSMESHGen();
SALOMEDS::Study_var aStudy = aSMESHGen->GetCurrentStudy(); SALOMEDS::Study_var aStudy = aSMESHGen->GetCurrentStudy();
SALOMEDS::SObject_var aSObject = SMESH_Gen_i::ObjectToSObject(aStudy,theArg); SALOMEDS::SObject_var aSObject = SMESH_Gen_i::ObjectToSObject(aStudy,theArg);
if(!aSObject->_is_nil() || CORBA::is_nil( theArg )) if(!aSObject->_is_nil())
return *this << aSObject; return *this << aSObject;
SMESH::SMESH_Mesh_var mesh = theArg->GetMesh(); SMESH::SMESH_Mesh_var mesh = theArg->GetMesh();
if ( !theArg->_is_equivalent( mesh) ) if ( !theArg->_is_equivalent( mesh ))
{ {
SMESH::long_array_var anElementsId = theArg->GetIDs(); SMESH::long_array_var anElementsId = theArg->GetIDs();
SMESH::array_of_ElementType_var types = theArg->GetTypes(); SMESH::array_of_ElementType_var types = theArg->GetTypes();