diff options
author | Wieland Hagen <wieland.hagen@kdab.com> | 2017-01-07 20:43:10 +0700 |
---|---|---|
committer | Wieland Hagen <wieland.hagen@kdab.com> | 2017-01-10 10:59:12 +0000 |
commit | 8adaeea5a706779de384cf4a8e9c4fec431b6734 (patch) | |
tree | 158c43f097446d668c6f9bef8c2cd5d444cf1ad8 | |
parent | 0c23294a6ebdc7caaef52d7d39d1337d8040c5e1 (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.cpp | 7 |
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 { |