diff --git a/src/Mod/PartDesign/Gui/TaskDraftParameters.cpp b/src/Mod/PartDesign/Gui/TaskDraftParameters.cpp index 796dba6b9..a8dcdac61 100644 --- a/src/Mod/PartDesign/Gui/TaskDraftParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskDraftParameters.cpp @@ -125,6 +125,8 @@ void TaskDraftParameters::onSelectionChanged(const Gui::SelectionChanges& msg) std::vector planes; App::DocumentObject* selObj; getReferencedSelection(pcDraft, msg, selObj, planes); + if(!selObj) + return; pcDraft->NeutralPlane.setValue(selObj, planes); ui->linePlane->setText(getRefStr(selObj, planes)); @@ -136,6 +138,8 @@ void TaskDraftParameters::onSelectionChanged(const Gui::SelectionChanges& msg) std::vector edges; App::DocumentObject* selObj; getReferencedSelection(pcDraft, msg, selObj, edges); + if(!selObj) + return; pcDraft->PullDirection.setValue(selObj, edges); ui->lineLine->setText(getRefStr(selObj, edges)); diff --git a/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp b/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp index 845ba5afc..425bb57ea 100644 --- a/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp @@ -187,6 +187,8 @@ void TaskMirroredParameters::onSelectionChanged(const Gui::SelectionChanges& msg App::DocumentObject* selObj; PartDesign::Mirrored* pcMirrored = static_cast(getObject()); getReferencedSelection(pcMirrored, msg, selObj, mirrorPlanes); + if(!selObj) + return; // Note: ReferenceSelection has already checked the selection for validity if ( selectionMode == reference || selObj->isDerivedFrom ( App::Plane::getClassTypeId () ) ) { pcMirrored->MirrorPlane.setValue(selObj, mirrorPlanes); diff --git a/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp b/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp index a3148b054..d776fb474 100644 --- a/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp @@ -228,6 +228,8 @@ void TaskPolarPatternParameters::onSelectionChanged(const Gui::SelectionChanges& App::DocumentObject* selObj; PartDesign::PolarPattern* pcPolarPattern = static_cast(getObject()); getReferencedSelection(pcPolarPattern, msg, selObj, axes); + if(!selObj) + return; // Note: ReferenceSelection has already checked the selection for validity if ( selectionMode == reference || selObj->isDerivedFrom ( App::Line::getClassTypeId () ) ) { pcPolarPattern->Axis.setValue(selObj, axes); diff --git a/src/Mod/PartDesign/Gui/TaskRevolutionParameters.cpp b/src/Mod/PartDesign/Gui/TaskRevolutionParameters.cpp index 6818fc81c..2add23f83 100644 --- a/src/Mod/PartDesign/Gui/TaskRevolutionParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskRevolutionParameters.cpp @@ -247,6 +247,8 @@ void TaskRevolutionParameters::onSelectionChanged(const Gui::SelectionChanges& m std::vector axis; App::DocumentObject* selObj; getReferencedSelection(vp->getObject(), msg, selObj, axis); + if(!selObj) + return; propReferenceAxis->setValue(selObj, axis); recomputeFeature();