From: eap Date: Thu, 10 Oct 2013 10:26:03 +0000 (+0000) Subject: catch exceptions in "rate = algo->GetProgress();" X-Git-Tag: V7_3_0a1~131 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=a6a734f16652d3e5f1a5f76bb3cbb35eff106f54;p=modules%2Fsmesh.git catch exceptions in "rate = algo->GetProgress();" --- diff --git a/src/SMESH/SMESH_Mesh.cxx b/src/SMESH/SMESH_Mesh.cxx index c45fefd88..691b86b76 100644 --- a/src/SMESH/SMESH_Mesh.cxx +++ b/src/SMESH/SMESH_Mesh.cxx @@ -1486,7 +1486,17 @@ double SMESH_Mesh::GetComputeProgress() const algoDoneCost += smToCompute[i]->GetComputeCost(); currentSubIds.Add( smToCompute[i]->GetId() ); } - double rate = algo->GetProgress(); + double rate = 0; + try + { + OCC_CATCH_SIGNALS; + rate = algo->GetProgress(); + } + catch (...) { +#ifdef _DEBUG_ + cerr << "Exception in " << algo->GetName() << "::GetProgress()" << endl; +#endif + } if ( 0. < rate && rate < 1.001 ) { computedCost += rate * ( algoDoneCost + algoNotDoneCost );