Should SIGSEGVs caused by broken shapes be reported?

shoogen's picture

Hello,
sometimes out application crashes. And catching SIGSEGVs is no good idea in this case. OCCT might be able to keep the data structures valid, but other parts of my Application do not.
When I put in valid shapes into modeling algorithms inside OCCT a SIGSEGV is triggered, I consider this a crash bug.
Now my question.
Do you want the cases where supplying invalid geometry to modeling algorithms results in a SIGSEGV? And if, what severity should I assign to them?
For example. If this is the indented behavior, that there is no check for performance reasons and that I need to run the checks before, that reasonable. But I should at least be documented.
Best Regards
Sebastian

kgv's picture

Re: report SIGSEGVs

Segmentation faults is a bad scenario for any application. Even when asynchronous signals are caught by OCCT handlers - them should be used only as a last barrier of application stability to do not crash.

Unfortunately some components of OCCT lack checks against invalid situations and might lead to problems. This may be done by design (either for performance reasons or to simplify code when invalid arguments should never occur), but normally invalid arguments throws construction / program exceptions.

I think these crashes should be reported and investigated case-by-case - robustness of the algorithms does matter even when data is broken.

www.opencascade.com

Copyright 2011-2017
OPEN CASCADE SAS
Contact us