summaryrefslogtreecommitdiffstats
path: root/abs/core/qt5-declarative/qtbug-61754.patch
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/qt5-declarative/qtbug-61754.patch')
-rw-r--r--abs/core/qt5-declarative/qtbug-61754.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/abs/core/qt5-declarative/qtbug-61754.patch b/abs/core/qt5-declarative/qtbug-61754.patch
new file mode 100644
index 0000000..e5352ec
--- /dev/null
+++ b/abs/core/qt5-declarative/qtbug-61754.patch
@@ -0,0 +1,25 @@
+From 768f606cd3cd37c235e85225127201a42d272946 Mon Sep 17 00:00:00 2001
+From: Joni Poikelin <joni.poikelin@qt.io>
+Date: Thu, 17 Aug 2017 09:49:25 +0300
+Subject: [PATCH] Fix memory leaks with threaded renderer
+
+Reverts 39061af50cc3092289cdd71d17802139590ecb59 and calls endSync()
+instead after syncSceneGraph().
+
+Task-number: QTBUG-61754
+Change-Id: I7b51ffdc93557bacd93927dd642ec3715980b21c
+Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
+Reviewed-by: Roger Zanoni <rogerzanoni@gmail.com>
+---
+diff --git a/src/quick/scenegraph/qsgthreadedrenderloop.cpp b/src/quick/scenegraph/qsgthreadedrenderloop.cpp
+index 3a8e673c0..d28a73da2 100644
+--- a/src/quick/scenegraph/qsgthreadedrenderloop.cpp
++++ b/src/quick/scenegraph/qsgthreadedrenderloop.cpp
+@@ -553,6 +553,7 @@ void QSGRenderThread::sync(bool inExpose)
+ if (d->renderer)
+ d->renderer->clearChangedFlag();
+ d->syncSceneGraph();
++ sgrc->endSync();
+ if (!hadRenderer && d->renderer) {
+ qCDebug(QSG_LOG_RENDERLOOP) << QSG_RT_PAD << "- renderer was created";
+ syncResultedInChanges = true;