diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2014-07-17 17:31:08 +0200 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2014-07-22 19:32:30 +0200 |
commit | 9ac64d1aa090416db7aec00d1136b8d625e40a2c (patch) | |
tree | bc3adc463e953dd4ad5e543d713956d6109f04f3 /src/render/backend/rendertechnique.cpp | |
parent | 0f0bf28b05e5d08767aa98f83dc6d5c898cdcc17 (diff) |
QResourcesManager cleanup
If a resource managed by a QResourcesManager has declared a
Q_DECLARE_RESOURCE_INFO(Resource, Q_REQUIRES_CLEANUP);
in its header, a call to Resource->cleanup() will be performed when the
resource is released.
Note: Needs the next patch to compile
Change-Id: Icef073c90f44a8e43a07adb5b9a496b86d7a4398
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/backend/rendertechnique.cpp')
-rw-r--r-- | src/render/backend/rendertechnique.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/render/backend/rendertechnique.cpp b/src/render/backend/rendertechnique.cpp index be714ec26..1a1e431b1 100644 --- a/src/render/backend/rendertechnique.cpp +++ b/src/render/backend/rendertechnique.cpp @@ -66,6 +66,11 @@ RenderTechnique::RenderTechnique() : RenderTechnique::~RenderTechnique() { + cleanup(); +} + +void RenderTechnique::cleanup() +{ if (m_renderer != Q_NULLPTR && m_peer != Q_NULLPTR) m_renderer->rendererAspect()->aspectManager()->changeArbiter()->unregisterObserver(this, m_peer); } |