From 48ec50db383e436b9db2611df2fd4bd2b13479de Mon Sep 17 00:00:00 2001 From: wmayer Date: Thu, 4 Oct 2018 23:34:19 +0200 Subject: [PATCH] fix segfault in ExpressionDelegate in case constraint property is invalidated --- src/Mod/Sketcher/Gui/TaskSketcherConstrains.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Mod/Sketcher/Gui/TaskSketcherConstrains.cpp b/src/Mod/Sketcher/Gui/TaskSketcherConstrains.cpp index 93824ad8cc..cbc4caa5f1 100644 --- a/src/Mod/Sketcher/Gui/TaskSketcherConstrains.cpp +++ b/src/Mod/Sketcher/Gui/TaskSketcherConstrains.cpp @@ -378,7 +378,9 @@ protected: App::ObjectIdentifier path = item->sketch->Constraints.createPath(item->ConstraintNbr); App::PropertyExpressionEngine::ExpressionInfo expr_info = item->sketch->getExpression(path); - if (item->sketch->Constraints[item->ConstraintNbr]->isDriving && expr_info.expression) { + // in case the constraint property is invalidated it returns a null pointer + const Sketcher::Constraint* constraint = item->sketch->Constraints[item->ConstraintNbr]; + if (constraint && constraint->isDriving && expr_info.expression) { // Paint pixmap int s = 2 * options.rect.height() / 4; int margin = s;