From: Artem Zhidkov Date: Fri, 5 Jun 2020 10:45:09 +0000 (+0300) Subject: Issue #19187: B-Splines - Crash with specific scenario X-Git-Tag: V9_5_0rc1~10 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=6f0ee6600d7dd97a16a37f33732b949f16fc06ba;p=modules%2Fshaper.git Issue #19187: B-Splines - Crash with specific scenario Prohibit tangency constraint between B-spline curve and its control polygon. --- diff --git a/src/SketchPlugin/SketchPlugin_Validators.cpp b/src/SketchPlugin/SketchPlugin_Validators.cpp index fbc98f205..f3543bc29 100644 --- a/src/SketchPlugin/SketchPlugin_Validators.cpp +++ b/src/SketchPlugin/SketchPlugin_Validators.cpp @@ -231,6 +231,9 @@ bool SketchPlugin_TangentAttrValidator::isValid(const AttributePtr& theAttribute std::set aCoincidences = SketchPlugin_Tools::findCoincidentConstraints(aRefFea); for (std::set::iterator anIt = aCoincidences.begin(); anIt != aCoincidences.end() && !isValid; ++anIt) { + if ((*anIt)->getKind() == SketchPlugin_ConstraintCoincidenceInternal::ID()) + continue; // skip internal constraints + std::set aCoinc; if (isApplicableCoincidence(*anIt, SketchPlugin_Constraint::ENTITY_A())) SketchPlugin_Tools::findCoincidences(*anIt, SketchPlugin_Constraint::ENTITY_B(),