View Issue Details

IDProjectCategoryView StatusLast Update
0000713FreeCADFeaturepublic2012-05-25 07:51
Reporterjrheinlaender Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionwon't fix 
Product Version0.12 
Fixed in Version0.13 
Summary0000713: Document::_recomputeFeature() should handle Standard_Failure
DescriptionIMHO the OpenCascade exceptions derived from Standard_Failure should also be caught here. Otherwise, I just see an "unknown exception" error with no explanatory text.

Maybe not in the production build of FreeCad, but certainly in the development build.

For example:

catch (Standard_Failure) {
        Handle_Standard_Failure e = Standard_Failure::Caught();
        Base::Console().Error("App::Document::_RecomputeFeature(): OpenCascade exception thrown: %s", e->GetMessageString());

    }
Additional InformationWhy can't I choose product version 0.13 in this tracker?
TagsNo tags attached.
FreeCAD Information

Activities

wmayer

2012-05-21 06:48

administrator   ~0002062

And this would mean to add a dependency to the OCC library on the core system but we don't want to have this. Besides that most of Standard_Failures from OCC algorithms do not contain any text.

So, the only practicable solution is to handle OCC exceptions in the execute() methods and return an instance of 'DocumentObjectExecReturn' or re-throw a Base::Exception where the programmers can set an own text if needed.

Issue History

Date Modified Username Field Change
2012-05-21 01:25 jrheinlaender New Issue
2012-05-21 06:48 wmayer Note Added: 0002062
2012-05-25 07:51 wmayer Status new => closed
2012-05-25 07:51 wmayer Resolution open => won't fix
2012-05-25 07:51 wmayer Fixed in Version => 0.13