[TD]avoid crash on missing ViewProviderPage
This commit is contained in:
@@ -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<DrawViewPart*>(feature);
|
||||
auto* dvp = freecad_cast<DrawViewPart*>(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) {
|
||||
|
||||
Reference in New Issue
Block a user