diff --git a/src/Mod/TechDraw/Gui/QGIView.cpp b/src/Mod/TechDraw/Gui/QGIView.cpp index 5b9a9ab5da..4e2c2b5228 100644 --- a/src/Mod/TechDraw/Gui/QGIView.cpp +++ b/src/Mod/TechDraw/Gui/QGIView.cpp @@ -277,7 +277,7 @@ void QGIView::snapPosition(QPointF& newPosition) return; } - auto feature = getViewObject(); + DrawView* feature = getViewObject(); if (!feature) { return; } @@ -286,14 +286,18 @@ void QGIView::snapPosition(QPointF& newPosition) return; } - auto dvp = freecad_cast(feature); + auto* dvp = freecad_cast(feature); if (dvp && !dvp->hasGeometry()) { // too early. wait for updates to finish. return; } - auto vpPage = getViewProviderPage(feature); + ViewProviderPage* vpPage = getViewProviderPage(feature); + if (!vpPage) { + // too early. not added to page yet? + return; + } QGSPage* scenePage = vpPage->getQGSPage(); if (!scenePage) {