Closed nickoe closed 6 years ago
Hi @tpaviot,
I have been told that there is a way to disable Shape Healing with a config file for OCE. But they guy who told me didn't remember where this config file is and said it was not documented. Do you know this such that we can progress with this?
TkShHealing is a core part of oce. You can set OCE_MODEL to False, it will also disable a lot of other packages.
The BRepGProp_Face issue seems to be related to Kicad (which I don't know). Please report issue to Kicad team.
@tpaviot I originally reported this on KiCad as mentioned in the original issue description.
I may be a bit naive, but what makes you conclude that BRepGProp_Face is related to KiCad? Looking at frame zero it says:
RepGProp_Face::Load(TopoDS_Edge const&) () at /opt/oce/lib/libTKTopAlgo.so.11
That points to one of the OCE so-files.
Hi tpaviot,
Would you give any hints about potential causes of the segfault? Is there a way to gracefully handle an input data error rather than getting a segfault? What puzzles me the most is the fact oce 0.17 did not have any problems loading the file.
I extracted the code and turned it into a standalone project (link) to demonstrate the segfault. I hope you could give us an advice on how to proceed.
One of our fellow KiCad developers found out (link) that modifying the conversion precision setting fixes the segfault.
This issue is in FixSmallFaces(). Running OCE's 0.18 version of this function on the attached file will segfault OCE when RemoveSmallAreaFaceMode is enabled on IGES processing.
@tpaviot Is this something we can report upstream?
There is no sense to report it upstream -- this issue has been fixed in OCCT 7.1.0 (OCCT issue 27781). To reproduce in DRAW:
pload ALL param xstep.cascade.unit M igesbrep "User Library-Fuse_Holder.IGS" a *
Note that this problem is reproducible with OCCT 6.9.1 and 7.0.0, bun not 6.9.0 not 7.1.0+. As well I cannot reproduce it on any version using file "test2.igs" found in the standalone project shared by orsonmmz.
@a-betenev OK, thank you for the information. I guess we will have to wait for a new OCE release based on OCCT 7.1.0+. :)
@nickoe Branch upstream-occt-720 contains upstream code for occt720, patches are uploaded to review/occt-720-patches. I will merge into master as soon as travis and appveyor builds pass.
@tpaviot Thanks.
This is a segfault I see in KiCad when going from OCE 0.17.2 to OCE 0.18.2. I have not tested OCE 0.18.1.
The issue appears always for me on two archlinux machines. Is there anything more simple, than running KiCad, that I can run from OCE to test loading this IGES file to create a simpler test scenario for debugging?
Originally reported in https://bugs.launchpad.net/kicad/+bug/1738872
Snippet of backtrace, full backtrace in the attached zip file in above bug report.