summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWieland Hagen <wieland.hagen@kdab.com>2017-01-07 20:43:10 +0700
committerWieland Hagen <wieland.hagen@kdab.com>2017-01-10 10:59:12 +0000
commit8adaeea5a706779de384cf4a8e9c4fec431b6734 (patch)
tree158c43f097446d668c6f9bef8c2cd5d444cf1ad8
parent0c23294a6ebdc7caaef52d7d39d1337d8040c5e1 (diff)
Free buffers in Renderer::releaseGraphicsResources()
Change-Id: Ic5e48d4b7290de94110f7cb815516b2841d02341 Task-number: QTBUG-55489 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
-rw-r--r--src/render/backend/renderer.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/render/backend/renderer.cpp b/src/render/backend/renderer.cpp
index 61eb3f3c6..c060a15b9 100644
--- a/src/render/backend/renderer.cpp
+++ b/src/render/backend/renderer.cpp
@@ -386,7 +386,12 @@ void Renderer::releaseGraphicsResources()
for (GLTexture *tex : activeTextures)
tex->destroyGLTexture();
- // TO DO: Do the same thing with buffers
+ // Do the same thing with buffers
+ const QVector<HGLBuffer> activeBuffers = m_nodesManager->glBufferManager()->activeHandles();
+ for (const HGLBuffer &bufferHandle : activeBuffers) {
+ GLBuffer *buffer = m_nodesManager->glBufferManager()->data(bufferHandle);
+ buffer->destroy(m_graphicsContext.data());
+ }
context->doneCurrent();
} else {