mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-19 13:40:49 +03:00
0026671: Infinite loop in ShapeFix_Wire::FixSelfIntersection()
Avoid possible infinite loops in ShapeFix_Wire::FixSelfIntersection() -- when needed, fix is repeated once instead of going back in the loop
This commit is contained in:
@@ -908,7 +908,8 @@ Standard_Boolean ShapeFix_Wire::FixSelfIntersection()
|
||||
//%15 pdn 06.04.99 repeat until fixed CTS18546-2 entity 777
|
||||
|
||||
// if the tolerance was modified we should recheck the result, if it was enough
|
||||
if ( LastFixStatus ( ShapeExtend_DONE7 ) ) num--;
|
||||
if ( LastFixStatus ( ShapeExtend_DONE7 ) ) //num--;
|
||||
FixIntersectingEdges ( num );
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -926,10 +927,10 @@ Standard_Boolean ShapeFix_Wire::FixSelfIntersection()
|
||||
else {
|
||||
//#86 rln 22.03.99
|
||||
//%15 pdn 06.04.99 repeat until fixed CTS18546-2 entity 777
|
||||
//FixIntersectingEdges ( num );
|
||||
FixIntersectingEdges ( num );
|
||||
/*if ( LastFixStatus ( ShapeExtend_DONE7 ) )*/
|
||||
// Always revisit the fixed edge
|
||||
num--;
|
||||
//num--;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user