From e4cd15e388f675a80a9c257655a580b1b53c240a Mon Sep 17 00:00:00 2001 From: Tomi Korpipaa Date: Mon, 29 Apr 2019 12:50:14 +0300 Subject: Fix hanging at application exit Task-number: QTBUG-75256 Task-number: QTBUG-69627 Change-Id: If4221c8fcf783daf4bf6a38dbf1b9633a20eafb0 Reviewed-by: Miikka Heikkinen --- src/datavisualization/engine/bars3drenderer.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src/datavisualization/engine/bars3drenderer.cpp') 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() -- cgit v1.2.3