summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/engine/bars3drenderer.cpp
diff options
context:
space:
mode:
authorTomi Korpipaa <tomi.korpipaa@qt.io>2019-04-29 12:50:14 +0300
committerTomi Korpipää <tomi.korpipaa@qt.io>2019-04-29 12:58:36 +0000
commite4cd15e388f675a80a9c257655a580b1b53c240a (patch)
tree07840b4acf5790a88dfe56740e5a4cab9ec8bf03 /src/datavisualization/engine/bars3drenderer.cpp
parentfd902c04b912deb81f41da0cd216d2cb1c86289b (diff)
Fix hanging at application exit
Task-number: QTBUG-75256 Task-number: QTBUG-69627 Change-Id: If4221c8fcf783daf4bf6a38dbf1b9633a20eafb0 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Diffstat (limited to 'src/datavisualization/engine/bars3drenderer.cpp')
-rw-r--r--src/datavisualization/engine/bars3drenderer.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/datavisualization/engine/bars3drenderer.cpp b/src/datavisualization/engine/bars3drenderer.cpp
index e8f96c87..c57339db 100644
--- a/src/datavisualization/engine/bars3drenderer.cpp
+++ b/src/datavisualization/engine/bars3drenderer.cpp
@@ -100,8 +100,16 @@ Bars3DRenderer::Bars3DRenderer(Bars3DController *controller)
Bars3DRenderer::~Bars3DRenderer()
{
- fixContextBeforeDelete();
+ contextCleanup();
+ delete m_barShader;
+ delete m_barGradientShader;
+ delete m_depthShader;
+ delete m_selectionShader;
+ delete m_backgroundShader;
+}
+void Bars3DRenderer::contextCleanup()
+{
if (QOpenGLContext::currentContext()) {
m_textureHelper->glDeleteFramebuffers(1, &m_selectionFrameBuffer);
m_textureHelper->glDeleteRenderbuffers(1, &m_selectionDepthBuffer);
@@ -109,12 +117,6 @@ Bars3DRenderer::~Bars3DRenderer()
m_textureHelper->glDeleteFramebuffers(1, &m_depthFrameBuffer);
m_textureHelper->deleteTexture(&m_bgrTexture);
}
-
- delete m_barShader;
- delete m_barGradientShader;
- delete m_depthShader;
- delete m_selectionShader;
- delete m_backgroundShader;
}
void Bars3DRenderer::initializeOpenGL()