From 4a9f416b8cb8f41e565918c010ebf7be0502c902 Mon Sep 17 00:00:00 2001 From: Pasukhin Dmitry Date: Tue, 16 Dec 2025 09:22:48 +0000 Subject: [PATCH] Coding - Fix unnecessary loop iteration in BRepLib::BuildCurve3d (#921) BRep_Tool::CurveOnSurface expects Index >= 1, but the loop started from ii = 0, resulting in a wasted iteration that always returned a null pointer. Fixes #0032371 --- src/ModelingAlgorithms/TKTopAlgo/BRepLib/BRepLib.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/ModelingAlgorithms/TKTopAlgo/BRepLib/BRepLib.cxx b/src/ModelingAlgorithms/TKTopAlgo/BRepLib/BRepLib.cxx index 33041ece41..8920d63c4d 100644 --- a/src/ModelingAlgorithms/TKTopAlgo/BRepLib/BRepLib.cxx +++ b/src/ModelingAlgorithms/TKTopAlgo/BRepLib/BRepLib.cxx @@ -371,7 +371,8 @@ Standard_Boolean BRepLib::BuildCurve3d(const TopoDS_Edge& AnEdge, if (!BRep_Tool::Degenerated(AnEdge)) { jj = 0; - for (ii = 0; ii < 3; ii++) + // BRep_Tool::CurveOnSurface expects Index >= 1, so start from 1. + for (ii = 1; ii < 3; ii++) { BRep_Tool::CurveOnSurface(TopoDS::Edge(AnEdge), Curve2dPtr,