diff --git a/src/Mod/TechDraw/App/DrawViewSection.cpp b/src/Mod/TechDraw/App/DrawViewSection.cpp index d22753b1f4..1639f205ac 100644 --- a/src/Mod/TechDraw/App/DrawViewSection.cpp +++ b/src/Mod/TechDraw/App/DrawViewSection.cpp @@ -552,15 +552,20 @@ std::vector DrawViewSection::getWireForFace(int idx) const void DrawViewSection::unsetupObject() { - getBaseDVP()->touch(); + TechDraw::DrawViewPart* base = getBaseDVP(); + if (base != nullptr) { + base->touch(); + } } TechDraw::DrawViewPart* DrawViewSection::getBaseDVP() { TechDraw::DrawViewPart* baseDVP = nullptr; App::DocumentObject* base = BaseView.getValue(); - if (base->getTypeId().isDerivedFrom(TechDraw::DrawViewPart::getClassTypeId())) { - baseDVP = static_cast(base); + if (base != nullptr) { + if (base->getTypeId().isDerivedFrom(TechDraw::DrawViewPart::getClassTypeId())) { + baseDVP = static_cast(base); + } } return baseDVP; } @@ -569,8 +574,10 @@ TechDraw::DrawProjGroupItem* DrawViewSection::getBaseDPGI() { TechDraw::DrawProjGroupItem* baseDPGI = nullptr; App::DocumentObject* base = BaseView.getValue(); - if (base->getTypeId().isDerivedFrom(TechDraw::DrawProjGroupItem::getClassTypeId())) { - baseDPGI = static_cast(base); + if (base != nullptr) { + if (base->getTypeId().isDerivedFrom(TechDraw::DrawProjGroupItem::getClassTypeId())) { + baseDPGI = static_cast(base); + } } return baseDPGI; }