From ad7fbee066b6255336274ceeacb29cc04c9d8ebb Mon Sep 17 00:00:00 2001 From: wmayer Date: Thu, 6 Aug 2020 11:26:24 +0200 Subject: [PATCH] Part: [skip ci] fix crash when closing document while face colors panel is open --- src/Gui/Selection.cpp | 7 +++++-- src/Mod/Part/Gui/TaskFaceColors.cpp | 3 ++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/Gui/Selection.cpp b/src/Gui/Selection.cpp index fc6ef0bc46..b21de2e0f3 100644 --- a/src/Gui/Selection.cpp +++ b/src/Gui/Selection.cpp @@ -972,11 +972,14 @@ void SelectionSingleton::rmvSelectionGate(void) { if (ActiveGate) { delete ActiveGate; - ActiveGate=0; + ActiveGate = nullptr; + Gui::Document* doc = Gui::Application::Instance->activeDocument(); if (doc) { + // if a document is about to be closed it has no MDI view any more Gui::MDIView* mdi = doc->getActiveView(); - mdi->restoreOverrideCursor(); + if (mdi) + mdi->restoreOverrideCursor(); } } } diff --git a/src/Mod/Part/Gui/TaskFaceColors.cpp b/src/Mod/Part/Gui/TaskFaceColors.cpp index f030a31f59..4a18acb368 100644 --- a/src/Mod/Part/Gui/TaskFaceColors.cpp +++ b/src/Mod/Part/Gui/TaskFaceColors.cpp @@ -34,6 +34,7 @@ # include # include # include +# include # include # include # include @@ -97,7 +98,7 @@ class FaceColors::Private public: typedef boost::signals2::connection Connection; Ui_TaskFaceColors* ui; - Gui::View3DInventorViewer* view; + QPointer view; ViewProviderPartExt* vp; App::DocumentObject* obj; Gui::Document* doc;