aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/scenegraph/qsgthreadedrenderloop.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/quick/scenegraph/qsgthreadedrenderloop.cpp')
-rw-r--r--src/quick/scenegraph/qsgthreadedrenderloop.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/quick/scenegraph/qsgthreadedrenderloop.cpp b/src/quick/scenegraph/qsgthreadedrenderloop.cpp
index d28a73da20..e0f78a9873 100644
--- a/src/quick/scenegraph/qsgthreadedrenderloop.cpp
+++ b/src/quick/scenegraph/qsgthreadedrenderloop.cpp
@@ -406,6 +406,13 @@ bool QSGRenderThread::event(QEvent *e)
stopEventProcessing = true;
} else {
qCDebug(QSG_LOG_RENDERLOOP) << QSG_RT_PAD << "- not releasing because window is still active";
+ if (window) {
+ QQuickWindowPrivate *d = QQuickWindowPrivate::get(window);
+ if (d->renderer) {
+ qCDebug(QSG_LOG_RENDERLOOP) << QSG_RT_PAD << "- requesting renderer to release cached resources";
+ d->renderer->releaseCachedResources();
+ }
+ }
}
waitCondition.wakeOne();
wm->m_lockedForSync = false;