aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/scenegraph/qsgthreadedrenderloop.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-09-05 09:01:22 +0200
committerLiang Qi <liang.qi@qt.io>2017-09-05 09:31:34 +0200
commit2795ac5d5930fa28ea329529c0dd2e515b361531 (patch)
tree8dd01197f5b71e1eb8e3612b0119764623325803 /src/quick/scenegraph/qsgthreadedrenderloop.cpp
parent8f93d3627a9b76bf77896501129990e33a77f32c (diff)
parent6ff0e9a65657e8c51a37e63efe8169bb7e3050cc (diff)
Merge remote-tracking branch 'origin/5.9' into 5.10
Conflicts: src/quick/items/qquickwindow.cpp src/quick/scenegraph/qsgrenderloop.cpp Change-Id: Idd7106995b5545fcac869e9056a365ef9edb36ca
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 fb04de27d7..4a712d3cdd 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;