mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-06 20:02:16 +00:00
63ffadfebf
A 2D TRIMMED_CURVE in a pcurve read its basis straight through read_curve, past the depth check that only the cached entry points (curve_in, curve_2d, surface_in) made. A trimmed curve whose basis is itself, or a loop of two, recursed until the stack overflowed and the app closed. The depth check now sits in read_curve and read_surface, which every curve and surface read passes through, so any chain of references, a cycle included, ends at MAX_GEOM_DEPTH with an error that names the entity: "curve #9: definitions nested more than 12 deep, or referring to themselves". The other nested entities (surface, seam, intersection and bounded surface curves, pcurves, 3D offset curves, offset, trimmed, revolution and extrusion surfaces) already went through the checked entry points; they now share the one check. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>