makeCurrent when destroying ManagedDisplayWidgets

Fixes #1555
This commit is contained in:
itsmattkc
2021-04-08 18:59:04 +10:00
parent ba0eb2335b
commit abe28f81bf
10 changed files with 24 additions and 33 deletions
+1 -1
View File
@@ -70,7 +70,7 @@ ManagedDisplayWidget::ManagedDisplayWidget(QWidget *parent) :
ManagedDisplayWidget::~ManagedDisplayWidget()
{
OnDestroy();
MANAGEDDISPLAYWIDGET_DEFAULT_DESTRUCTOR_INNER;
if (RenderManager::instance()->backend() == RenderManager::kOpenGL) {
disconnect(static_cast<ManagedDisplayWidgetOpenGL*>(inner_widget_),
@@ -82,6 +82,11 @@ private slots:
};
#define MANAGEDDISPLAYWIDGET_DEFAULT_DESTRUCTOR_INNER \
makeCurrent();OnDestroy();doneCurrent()
#define MANAGEDDISPLAYWIDGET_DEFAULT_DESTRUCTOR(x) \
virtual ~x() override{MANAGEDDISPLAYWIDGET_DEFAULT_DESTRUCTOR_INNER;}
class ManagedDisplayWidget : public QWidget
{
Q_OBJECT