[Bug report] Regression in 6.5.0 - Fails to read IGES file

Enclosed is a file that successfully reads in 6.3.1 and fails in 6.5.0. There are 19 failed Boundaries.

Reproducer in DRAW for 1 entity
pload ALL
igesbrep marteau.igs m
3
32

Attachments: 
Roman Lygin's picture

OCC 6.5.1 seems to fix this regression.
From release notes and looking at the source code, it looks like to be 22294 with a fix in IGESToBRep_IGESBoundary.cxx.

The file did not change between 6.3.1 and 6.5.0 (where the regression is). So the regression is likely explained by the changes in Shape Healing (ShapeExtend_WireData or alike) introduced in 6.5.0 (or 6.4.x of course). As the regression was fixed in the client (IGES importer) the question is whether there are other possible similar issues (e.g. in STEP reader, in Shape Healing itself, etc).

So, the question to the OCC team - have you made careful code review when making a regression fix in IGESToBRep that other possible clients remain unaffected ?

Thank you,
Roman

Roman Lygin's picture

corrected typo from the previous post - correct bug report is 22504.

By the way, another test case exhibiting the problem is enclosed. Works fine in 6.3.1 and 6.5.1, loses a few faces in 6.5.0.

Attachments: 
Forum supervisor's picture

Dear Roman,
Thanks for your contribution. We will add you test case to our test base.
At the same time I would like to note that all our fixes are fully tested on our non regression test base.
The fix in ShapeExtend_WireData was performed for the case when the initial wire had reverse orientation (there was a problem with handling such a case). Before the integration, all the checks were passed. Because of this fact and after having revised the Step reader and Shape Healing codes we believe that there are no places in our codes where this class was used in that way.
Regards

Roman Lygin's picture

Excellent, supervisor!
Thanks for confirmation of the due diligence performed.