forked from pool/libqt5-qtdeclarative
Accepting request 429989 from KDE:Qt5
The Time Has Come to Shoot You Down... What a Sound OBS-URL: https://build.opensuse.org/request/show/429989 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libqt5-qtdeclarative?expand=0&rev=33
This commit is contained in:
parent
5d18f434c0
commit
90bb2e068e
@ -1,3 +1,11 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Sep 24 18:39:01 UTC 2016 - hrvoje.senjan@gmail.com
|
||||||
|
|
||||||
|
- Update to 5.7.0
|
||||||
|
* For more details please see:
|
||||||
|
https://www.qt.io/qt5-7/
|
||||||
|
- Axe dead qml_only_release_types_if_they_arent_referenced_anymore.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Jun 21 09:41:43 UTC 2016 - lbeltrame@kde.org
|
Tue Jun 21 09:41:43 UTC 2016 - lbeltrame@kde.org
|
||||||
|
|
||||||
|
@ -21,22 +21,20 @@
|
|||||||
%define libname libQtQuick5
|
%define libname libQtQuick5
|
||||||
|
|
||||||
Name: libqt5-qtdeclarative
|
Name: libqt5-qtdeclarative
|
||||||
Version: 5.6.1
|
Version: 5.7.0
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Qt 5 Declarative Library
|
Summary: Qt 5 Declarative Library
|
||||||
License: SUSE-LGPL-2.1-with-digia-exception-1.1 or GPL-3.0
|
License: SUSE-LGPL-2.1-with-digia-exception-1.1 or GPL-3.0
|
||||||
Group: Development/Libraries/X11
|
Group: Development/Libraries/X11
|
||||||
Url: http://qt.digia.com
|
Url: http://qt.digia.com
|
||||||
%define base_name libqt5
|
%define base_name libqt5
|
||||||
%define real_version 5.6.1
|
%define real_version 5.7.0
|
||||||
%define so_version 5.6.1
|
%define so_version 5.7.0
|
||||||
%define tar_version qtdeclarative-opensource-src-%{real_version}
|
%define tar_version qtdeclarative-opensource-src-%{real_version}
|
||||||
Source: %{tar_version}.tar.xz
|
Source: %{tar_version}.tar.xz
|
||||||
Source1: baselibs.conf
|
Source1: baselibs.conf
|
||||||
# PATCH-FIX-OPENSUSE overflow.patch -- Statement might be overflowing a buffer
|
# PATCH-FIX-OPENSUSE overflow.patch -- Statement might be overflowing a buffer
|
||||||
Patch0: overflow.patch
|
Patch0: overflow.patch
|
||||||
# PATCH-FIX-UPSTREAM qml_only_release_types_if_they_arent_referenced_anymore.patch
|
|
||||||
Patch1: qml_only_release_types_if_they_arent_referenced_anymore.patch
|
|
||||||
# PATCH-FIX-OPENSUSE: qtdeclarative-opensource-src-5.6.0-qml_no-lifetime-dse.patch - fix crashes with i586 and Plasma (boo #985768)
|
# PATCH-FIX-OPENSUSE: qtdeclarative-opensource-src-5.6.0-qml_no-lifetime-dse.patch - fix crashes with i586 and Plasma (boo #985768)
|
||||||
Patch2: qtdeclarative-opensource-src-5.6.0-qml_no-lifetime-dse.patch
|
Patch2: qtdeclarative-opensource-src-5.6.0-qml_no-lifetime-dse.patch
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
@ -76,7 +74,6 @@ handling.
|
|||||||
%prep
|
%prep
|
||||||
%setup -q -n qtdeclarative-opensource-src-%{real_version}
|
%setup -q -n qtdeclarative-opensource-src-%{real_version}
|
||||||
%patch0 -p1
|
%patch0 -p1
|
||||||
%patch1 -p1
|
|
||||||
%patch2 -p1
|
%patch2 -p1
|
||||||
|
|
||||||
%package -n %libname
|
%package -n %libname
|
||||||
@ -221,7 +218,7 @@ popd
|
|||||||
%{_libqt5_libdir}/cmake/Qt5*
|
%{_libqt5_libdir}/cmake/Qt5*
|
||||||
%{_libqt5_libdir}/libQt5*.prl
|
%{_libqt5_libdir}/libQt5*.prl
|
||||||
%{_libqt5_libdir}/libQt5Q*.so
|
%{_libqt5_libdir}/libQt5Q*.so
|
||||||
%{_libqt5_libdir}/libQt5Q*.a
|
%{_libqt5_libdir}/libQt5*.a
|
||||||
%{_libqt5_libdir}/pkgconfig/Qt5Q*.pc
|
%{_libqt5_libdir}/pkgconfig/Qt5Q*.pc
|
||||||
%{_libqt5_archdatadir}/mkspecs/modules/*.pri
|
%{_libqt5_archdatadir}/mkspecs/modules/*.pri
|
||||||
%{_libqt5_archdatadir}/qml/QtTest
|
%{_libqt5_archdatadir}/qml/QtTest
|
||||||
|
@ -1,62 +0,0 @@
|
|||||||
From 9b1231ca3d21ade574a8a7cf3f0805a8b520bcd5 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Ulf Hermann <ulf.hermann@qt.io>
|
|
||||||
Date: Wed, 8 Jun 2016 17:32:32 +0200
|
|
||||||
Subject: [PATCH] QML: Only release types if they aren't referenced anymore
|
|
||||||
|
|
||||||
Just checking for references on m_compiledData is not enough. The
|
|
||||||
actual component can also be referenced. Thus it won't be deleted
|
|
||||||
on release(), but cannot be found in the type cache anymore.
|
|
||||||
|
|
||||||
Task-number: QTBUG-53761
|
|
||||||
Change-Id: I8567af8e75a078598e4fed31e4717134e1332278
|
|
||||||
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
||||||
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
||||||
(cherry picked from commit 2ac19881f92c94f4e9427bd9ff513210675f259e)
|
|
||||||
---
|
|
||||||
src/qml/qml/qqmltypeloader.cpp | 3 ++-
|
|
||||||
tests/auto/qml/qqmltypeloader/tst_qqmltypeloader.cpp | 15 ++++++++++++---
|
|
||||||
2 files changed, 14 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/qml/qml/qqmltypeloader.cpp b/src/qml/qml/qqmltypeloader.cpp
|
|
||||||
index c684c86..01200fd 100644
|
|
||||||
--- a/src/qml/qml/qqmltypeloader.cpp
|
|
||||||
+++ b/src/qml/qml/qqmltypeloader.cpp
|
|
||||||
@@ -1961,7 +1961,8 @@ void QQmlTypeLoader::trimCache()
|
|
||||||
QList<TypeCache::Iterator> unneededTypes;
|
|
||||||
for (TypeCache::Iterator iter = m_typeCache.begin(), end = m_typeCache.end(); iter != end; ++iter) {
|
|
||||||
QQmlTypeData *typeData = iter.value();
|
|
||||||
- if (typeData->m_compiledData && typeData->m_compiledData->count() == 1) {
|
|
||||||
+ if (typeData->m_compiledData && typeData->count() == 1
|
|
||||||
+ && typeData->m_compiledData->count() == 1) {
|
|
||||||
// There are no live objects of this type
|
|
||||||
unneededTypes.append(iter);
|
|
||||||
}
|
|
||||||
diff --git a/tests/auto/qml/qqmltypeloader/tst_qqmltypeloader.cpp b/tests/auto/qml/qqmltypeloader/tst_qqmltypeloader.cpp
|
|
||||||
index 7045c7c..a1eaa05 100644
|
|
||||||
--- a/tests/auto/qml/qqmltypeloader/tst_qqmltypeloader.cpp
|
|
||||||
+++ b/tests/auto/qml/qqmltypeloader/tst_qqmltypeloader.cpp
|
|
||||||
@@ -86,10 +86,19 @@ void tst_QQMLTypeLoader::trimCache()
|
|
||||||
url.setQuery(QString::number(i));
|
|
||||||
|
|
||||||
QQmlTypeData *data = loader.getType(url);
|
|
||||||
- if (i % 5 == 0) // keep references to some of them so that they aren't trimmed
|
|
||||||
- data->compiledData()->addref();
|
|
||||||
+ // Run an event loop to receive the callback that release()es.
|
|
||||||
+ QTRY_COMPARE(data->count(), 2);
|
|
||||||
|
|
||||||
- data->release();
|
|
||||||
+ // keep references to some of them so that they aren't trimmed. References to either the
|
|
||||||
+ // QQmlTypeData or its compiledData() should prevent the trimming.
|
|
||||||
+ if (i % 10 == 0) {
|
|
||||||
+ // keep ref on data, don't add ref on data->compiledData()
|
|
||||||
+ } else if (i % 5 == 0) {
|
|
||||||
+ data->compiledData()->addref();
|
|
||||||
+ data->release();
|
|
||||||
+ } else {
|
|
||||||
+ data->release();
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int i = 0; i < 256; ++i) {
|
|
||||||
--
|
|
||||||
2.1.4
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:12fcfd4bc4bad469f07f8c5404d98646f88f61200b014d4fbcb3a0d9e70942b4
|
|
||||||
size 18803076
|
|
3
qtdeclarative-opensource-src-5.7.0.tar.xz
Normal file
3
qtdeclarative-opensource-src-5.7.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:86de6239f3aee2e5f561c16ad7b6e47d8f341c293d4ed11c85acbc21888cf9f4
|
||||||
|
size 18896864
|
Loading…
Reference in New Issue
Block a user