[SCM] qtdeclarative packaging branch, experimental, updated. debian/5.9.1-3-1-gb8672a6

Simon Quigley tsimonq2-guest at moszumanska.debian.org
Wed Aug 2 07:30:06 UTC 2017


Gitweb-URL: http://git.debian.org/?p=pkg-kde/qt/qtdeclarative.git;a=commitdiff;h=b8672a6

The following commit has been merged in the experimental branch:
commit b8672a6146d0c16a6161bdf17529830a0f62dcb2
Author: Simon Quigley <tsimonq2 at ubuntu.com>
Date:   Wed Aug 2 02:29:31 2017 -0500

    Fix QTBUG-61681 (Rebuild QQmlData::propertyCache if deleted by another engine) by including rebuild-QmlDatapropertyCache-if-deleted.patch.
---
 debian/changelog                                   |  7 +++++
 .../rebuild-QmlDatapropertyCache-if-deleted.patch  | 31 ++++++++++++++++++++++
 debian/patches/series                              |  1 +
 3 files changed, 39 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index 81033ef..e2590c0 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+qtdeclarative-opensource-src (5.9.1-4) UNRELEASED; urgency=medium
+
+  * Fix QTBUG-61681 (Rebuild QQmlData::propertyCache if deleted by another
+    engine) by including rebuild-QmlDatapropertyCache-if-deleted.patch.
+
+ -- Simon Quigley <tsimonq2 at ubuntu.com>  Wed, 02 Aug 2017 02:18:55 -0500
+
 qtdeclarative-opensource-src (5.9.1-3) experimental; urgency=medium
 
   * Due to QTBUG-58567 we are forced to turn off JIT on mips* until
diff --git a/debian/patches/rebuild-QmlDatapropertyCache-if-deleted.patch b/debian/patches/rebuild-QmlDatapropertyCache-if-deleted.patch
new file mode 100644
index 0000000..c6b3047
--- /dev/null
+++ b/debian/patches/rebuild-QmlDatapropertyCache-if-deleted.patch
@@ -0,0 +1,31 @@
+Description: Rebuild QQmlData::propertyCache if deleted by another engine
+ QQmlData is shared between engines, but the relevant QObjectWrapper is
+ not. Since 749a7212e903d8e8c6f256edb1836b9449cc7fe1 when a
+ QObjectWrapper is deleted it resets the shared QQmlData propertyCache.
+ .
+ In most cases the propertyCache except when a property updated in an
+ existing binding in the first engine, where it currently asserts.
+ .
+ This patch can be dropped once 5.9.2 is packaged.
+Author: David Edmundson <davidedmundson at kde.org>
+Origin: upstream
+Bug: https://bugreports.qt.io/browse/QTBUG-61681
+Applied-Upstream: ab5d4c78224c9ec79165e8890e5f8b8e838e0709
+Reviewed-by: Simon Hausmann <simon.hausmann at qt.io>
+Last-Update: 2017-08-02
+--- a/src/qml/qml/qqmlbinding.cpp
++++ b/src/qml/qml/qqmlbinding.cpp
+@@ -515,7 +515,12 @@ void QQmlBinding::getPropertyData(QQmlPropertyData **propertyData, QQmlPropertyD
+     Q_ASSERT(propertyData);
+ 
+     QQmlData *data = QQmlData::get(*m_target, false);
+-    Q_ASSERT(data && data->propertyCache);
++    Q_ASSERT(data);
++
++    if (Q_UNLIKELY(!data->propertyCache)) {
++        data->propertyCache = QQmlEnginePrivate::get(context()->engine)->cache(m_target->metaObject());
++        data->propertyCache->addref();
++    }
+ 
+     *propertyData = data->propertyCache->property(m_targetIndex.coreIndex());
+     Q_ASSERT(*propertyData);
diff --git a/debian/patches/series b/debian/patches/series
index 54533b3..826d5b0 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,3 +3,4 @@ disableopengltests.patch
 fix_test_remove_qlibraryinfo.patch
 Do-not-make-lack-of-SSE2-support-on-x86-32-fatal.patch
 disable_jit_on_mips.patch
+rebuild-QmlDatapropertyCache-if-deleted.patch

-- 
qtdeclarative packaging



More information about the pkg-kde-commits mailing list