From 7eaede5482196c2a14dba54033c40939413228b7 Mon Sep 17 00:00:00 2001 From: wmayer Date: Tue, 25 Feb 2020 23:44:22 +0100 Subject: [PATCH] Fem: [skip ci] fix segmentation fault when opening contraint transform panel The segmentation fault is caused when NameDispl has less elements than the RefDispl property --- src/Mod/Fem/Gui/TaskFemConstraintTransform.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Mod/Fem/Gui/TaskFemConstraintTransform.cpp b/src/Mod/Fem/Gui/TaskFemConstraintTransform.cpp index e8afeabb27..7d213e8419 100644 --- a/src/Mod/Fem/Gui/TaskFemConstraintTransform.cpp +++ b/src/Mod/Fem/Gui/TaskFemConstraintTransform.cpp @@ -119,12 +119,15 @@ TaskFemConstraintTransform::TaskFemConstraintTransform(ViewProviderFemConstraint //Transformable surfaces Gui::Command::doCommand(Gui::Command::Doc,TaskFemConstraintTransform::getSurfaceReferences((static_cast(ConstraintView->getObject()))->getNameInDocument()).c_str()); std::vector ObjDispl = pcConstraint->RefDispl.getValues(); - std::vector nDispl = pcConstraint->NameDispl.getValues(); std::vector SubElemDispl = pcConstraint->RefDispl.getSubValues(); for (std::size_t i = 0; i < ObjDispl.size(); i++) { ui->lw_displobj_rect->addItem(makeRefText(ObjDispl[i], SubElemDispl[i])); ui->lw_displobj_cylin->addItem(makeRefText(ObjDispl[i], SubElemDispl[i])); + } + + std::vector nDispl = pcConstraint->NameDispl.getValues(); + for (std::size_t i = 0; i < nDispl.size(); i++) { ui->lw_dis_rect->addItem(makeText(nDispl[i])); ui->lw_dis_cylin->addItem(makeText(nDispl[i])); }