mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-01-02 21:00:34 +05:00
PAL16774,PAL16631(SALOME crash after a mesh computation that failed because of lack of memory)
Precise error message
This commit is contained in:
parent
7ff996b8f5
commit
f0331f699b
@ -1335,7 +1335,7 @@ bool SMESH_subMesh::ComputeStateEngine(int event)
|
|||||||
_computeError = algo->GetComputeError();
|
_computeError = algo->GetComputeError();
|
||||||
}
|
}
|
||||||
catch ( std::bad_alloc& exc ) {
|
catch ( std::bad_alloc& exc ) {
|
||||||
printf("std::bad_alloc\n");
|
printf("std::bad_alloc thrown inside algo->Compute()\n");
|
||||||
if ( _computeError ) {
|
if ( _computeError ) {
|
||||||
_computeError->myName = COMPERR_MEMORY_PB;
|
_computeError->myName = COMPERR_MEMORY_PB;
|
||||||
//_computeError->myComment = exc.what();
|
//_computeError->myComment = exc.what();
|
||||||
@ -1344,7 +1344,7 @@ bool SMESH_subMesh::ComputeStateEngine(int event)
|
|||||||
throw exc;
|
throw exc;
|
||||||
}
|
}
|
||||||
catch ( Standard_OutOfMemory& exc ) {
|
catch ( Standard_OutOfMemory& exc ) {
|
||||||
printf("Standard_OutOfMemory\n");
|
printf("Standard_OutOfMemory thrown inside algo->Compute()\n");
|
||||||
if ( _computeError ) {
|
if ( _computeError ) {
|
||||||
_computeError->myName = COMPERR_MEMORY_PB;
|
_computeError->myName = COMPERR_MEMORY_PB;
|
||||||
//_computeError->myComment = exc.what();
|
//_computeError->myComment = exc.what();
|
||||||
@ -1393,7 +1393,6 @@ bool SMESH_subMesh::ComputeStateEngine(int event)
|
|||||||
if (ret)
|
if (ret)
|
||||||
{
|
{
|
||||||
_computeError.reset();
|
_computeError.reset();
|
||||||
//UpdateDependantsState( SUBMESH_COMPUTED ); // send event SUBMESH_COMPUTED
|
|
||||||
}
|
}
|
||||||
UpdateDependantsState( SUBMESH_COMPUTED ); // send event SUBMESH_COMPUTED
|
UpdateDependantsState( SUBMESH_COMPUTED ); // send event SUBMESH_COMPUTED
|
||||||
}
|
}
|
||||||
@ -1611,15 +1610,6 @@ bool SMESH_subMesh::CheckComputeError(SMESH_Algo* theAlgo, const TopoDS_Shape& t
|
|||||||
noErrors = false;
|
noErrors = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ( !theAlgo->OnlyUnaryInput() && !theShape.IsNull() &&
|
|
||||||
theShape.ShapeType() == TopAbs_COMPOUND )
|
|
||||||
{
|
|
||||||
for (TopoDS_Iterator subIt( theShape ); subIt.More(); subIt.Next()) {
|
|
||||||
SMESH_subMesh* sm = _father->GetSubMesh( subIt.Value() );
|
|
||||||
if ( sm != this && !sm->CheckComputeError( theAlgo ))
|
|
||||||
noErrors = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return noErrors;
|
return noErrors;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user