Accepting request 711180 from KDE:Qt:5.13
Qt 5.13.0 OBS-URL: https://build.opensuse.org/request/show/711180 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libqt5-qtdeclarative?expand=0&rev=54
This commit is contained in:
parent
00ede578e9
commit
40db8e0711
@ -1,82 +0,0 @@
|
||||
From ea74f0c68cddf706c950d3910cf7b363fe24885b Mon Sep 17 00:00:00 2001
|
||||
From: Ulf Hermann <ulf.hermann@qt.io>
|
||||
Date: Wed, 17 Apr 2019 12:35:42 +0200
|
||||
Subject: [PATCH] Don't crash when accessing invalid properties through
|
||||
QObjectWrapper
|
||||
|
||||
Change-Id: I613bf5dc685bb4235262b429d8f7318ea144fb9d
|
||||
Fixes: QTBUG-75203
|
||||
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
|
||||
---
|
||||
src/qml/jsruntime/qv4qobjectwrapper.cpp | 2 +-
|
||||
.../undefinedPropertiesInObjectWrapper.qml | 20 +++++++++++++++++++
|
||||
.../qml/qqmlecmascript/tst_qqmlecmascript.cpp | 10 ++++++++++
|
||||
3 files changed, 31 insertions(+), 1 deletion(-)
|
||||
create mode 100644 tests/auto/qml/qqmlecmascript/data/undefinedPropertiesInObjectWrapper.qml
|
||||
|
||||
Index: qtdeclarative-everywhere-src-5.12.3/src/qml/jsruntime/qv4qobjectwrapper.cpp
|
||||
===================================================================
|
||||
--- qtdeclarative-everywhere-src-5.12.3.orig/src/qml/jsruntime/qv4qobjectwrapper.cpp
|
||||
+++ qtdeclarative-everywhere-src-5.12.3/src/qml/jsruntime/qv4qobjectwrapper.cpp
|
||||
@@ -856,7 +856,7 @@ ReturnedValue QObjectWrapper::virtualRes
|
||||
if (!ddata || !ddata->propertyCache) {
|
||||
QQmlPropertyData local;
|
||||
QQmlPropertyData *property = QQmlPropertyCache::property(engine->jsEngine(), qobj, name, qmlContext, local);
|
||||
- return getProperty(engine, qobj, property);
|
||||
+ return property ? getProperty(engine, qobj, property) : QV4::Encode::undefined();
|
||||
}
|
||||
QQmlPropertyData *property = ddata->propertyCache->property(name.getPointer(), qobj, qmlContext);
|
||||
|
||||
Index: qtdeclarative-everywhere-src-5.12.3/tests/auto/qml/qqmlecmascript/data/undefinedPropertiesInObjectWrapper.qml
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ qtdeclarative-everywhere-src-5.12.3/tests/auto/qml/qqmlecmascript/data/undefinedPropertiesInObjectWrapper.qml
|
||||
@@ -0,0 +1,20 @@
|
||||
+import QtQuick 2.12
|
||||
+
|
||||
+QtObject {
|
||||
+ property list<QtObject> entries: [
|
||||
+ QtObject {
|
||||
+ readonly property color color: "green"
|
||||
+ },
|
||||
+ QtObject {
|
||||
+ }
|
||||
+ ]
|
||||
+
|
||||
+ property Row row: Row {
|
||||
+ Repeater {
|
||||
+ model: entries
|
||||
+ Rectangle {
|
||||
+ color: model.color ? model.color : "red"
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
Index: qtdeclarative-everywhere-src-5.12.3/tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp
|
||||
===================================================================
|
||||
--- qtdeclarative-everywhere-src-5.12.3.orig/tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp
|
||||
+++ qtdeclarative-everywhere-src-5.12.3/tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp
|
||||
@@ -366,6 +366,7 @@ private slots:
|
||||
void tailCallWithArguments();
|
||||
void deleteSparseInIteration();
|
||||
void saveAccumulatorBeforeToInt32();
|
||||
+ void undefinedPropertiesInObjectWrapper();
|
||||
|
||||
private:
|
||||
// static void propertyVarWeakRefCallback(v8::Persistent<v8::Value> object, void* parameter);
|
||||
@@ -8941,6 +8942,15 @@ void tst_qqmlecmascript::saveAccumulator
|
||||
QCOMPARE(value.toString(), QLatin1String("RangeError: Maximum call stack size exceeded."));
|
||||
}
|
||||
|
||||
+void tst_qqmlecmascript::undefinedPropertiesInObjectWrapper()
|
||||
+{
|
||||
+ QQmlEngine engine;
|
||||
+ QQmlComponent component(&engine, testFile("undefinedPropertiesInObjectWrapper.qml"));
|
||||
+ QVERIFY(component.isReady());
|
||||
+ QScopedPointer<QObject> object(component.create());
|
||||
+ QVERIFY(!object.isNull());
|
||||
+}
|
||||
+
|
||||
QTEST_MAIN(tst_qqmlecmascript)
|
||||
|
||||
#include "tst_qqmlecmascript.moc"
|
@ -1,9 +1,40 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 19 11:19:49 UTC 2019 - fabian@ritter-vogt.de
|
||||
|
||||
- Update to 5.13.0:
|
||||
* New bugfix release
|
||||
* No changelog available
|
||||
* For more details about Qt 5.13 please see:
|
||||
* http://code.qt.io/cgit/qt/qtdeclarative.git/plain/dist/changes-5.13.0/?h=5.13
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 6 08:51:50 UTC 2019 - Fabian Vogt <fabian@ritter-vogt.de>
|
||||
|
||||
- Remove patches, upstream in 5.13:
|
||||
* Dont-crash-when-accessing-invalid-properties.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 4 14:50:38 UTC 2019 - Fabian Vogt <fabian@ritter-vogt.de>
|
||||
|
||||
- Add patch to fix crash (QTBUG-75203):
|
||||
* Dont-crash-when-accessing-invalid-properties.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 4 07:24:25 UTC 2019 - fabian@ritter-vogt.de
|
||||
|
||||
- Update to 5.13.0-rc:
|
||||
* New bugfix release
|
||||
* No changelog available
|
||||
- Remove patches, now upstream:
|
||||
* Dont-crash-when-accessing-invalid-properties.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 29 09:16:17 UTC 2019 - fabian@ritter-vogt.de
|
||||
|
||||
- Update to 5.13.0-beta2:
|
||||
* New bugfix release
|
||||
* No changelog available
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 18 07:26:48 UTC 2019 - fabian@ritter-vogt.de
|
||||
|
||||
@ -12,6 +43,15 @@ Thu Apr 18 07:26:48 UTC 2019 - fabian@ritter-vogt.de
|
||||
* For more details please see:
|
||||
* http://code.qt.io/cgit/qt/qtdeclarative.git/plain/dist/changes-5.12.3/?h=v5.12.3
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 21 10:24:50 UTC 2019 - fabian@ritter-vogt.de
|
||||
|
||||
- Update to 5.13.0-beta1:
|
||||
* New feature release
|
||||
* For more details about Qt 5.13 please see:
|
||||
* http://code.qt.io/cgit/qt/qtdeclarative.git/plain/dist/changes-5.13.0/?h=5.13
|
||||
- Refresh sse2_nojit.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 14 08:48:03 UTC 2019 - fabian@ritter-vogt.de
|
||||
|
||||
@ -842,3 +882,4 @@ Fri Apr 13 13:22:38 UTC 2012 - stephan.binner@basyskom.com
|
||||
Thu Apr 5 09:56:15 UTC 2012 - dmueller@suse.com
|
||||
|
||||
- Initial packaging (Qt 5.0 Alpha)
|
||||
|
||||
|
@ -21,20 +21,18 @@
|
||||
%define libname libQtQuick5
|
||||
|
||||
Name: libqt5-qtdeclarative
|
||||
Version: 5.12.3
|
||||
Version: 5.13.0
|
||||
Release: 0
|
||||
Summary: Qt 5 Declarative Library
|
||||
License: LGPL-2.1-with-Qt-Company-Qt-exception-1.1 or LGPL-3.0-only
|
||||
Group: Development/Libraries/X11
|
||||
Url: https://www.qt.io
|
||||
%define base_name libqt5
|
||||
%define real_version 5.12.3
|
||||
%define so_version 5.12.3
|
||||
%define tar_version qtdeclarative-everywhere-src-5.12.3
|
||||
Source: https://download.qt.io/official_releases/qt/5.12/%{real_version}/submodules/%{tar_version}.tar.xz
|
||||
%define real_version 5.13.0
|
||||
%define so_version 5.13.0
|
||||
%define tar_version qtdeclarative-everywhere-src-5.13.0
|
||||
Source: https://download.qt.io/official_releases/qt/5.13/%{real_version}/submodules/%{tar_version}.tar.xz
|
||||
Source1: baselibs.conf
|
||||
# PATCH-FIX-UPSTREAM
|
||||
Patch1: Dont-crash-when-accessing-invalid-properties.patch
|
||||
# PATCH-FIX-OPENSUSE sse2_nojit.patch -- enable JIT and sse2 only on sse2 case
|
||||
Patch100: sse2_nojit.patch
|
||||
# PATCH-FIX-OPENSUSE Switch to use python3 at build time
|
||||
@ -70,7 +68,8 @@ This package contains base tools, like string, xml, and network
|
||||
handling.
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n %{tar_version}
|
||||
%setup -q -n %{tar_version}
|
||||
%autopatch -p1
|
||||
|
||||
%package -n %libname
|
||||
Summary: Qt 5 Declarative Library
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:839881cd6996e35c351bc7d560372ebb91e61f3688957c33248c4f31ea007fa7
|
||||
size 20513544
|
3
qtdeclarative-everywhere-src-5.13.0.tar.xz
Normal file
3
qtdeclarative-everywhere-src-5.13.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b9e8780aef0af4a60e64dcc405bdf5c03a04b28e3b94d5c2e69d0006db566ba9
|
||||
size 20514784
|
@ -1,10 +1,10 @@
|
||||
Index: qtdeclarative-everywhere-src-5.12.0-alpha/src/qml/jsruntime/jsruntime.pri
|
||||
Index: qtdeclarative-everywhere-src-5.13.0-beta1/src/qml/jsruntime/jsruntime.pri
|
||||
===================================================================
|
||||
--- qtdeclarative-everywhere-src-5.12.0-alpha.orig/src/qml/jsruntime/jsruntime.pri
|
||||
+++ qtdeclarative-everywhere-src-5.12.0-alpha/src/qml/jsruntime/jsruntime.pri
|
||||
@@ -154,6 +154,11 @@ SOURCES += \
|
||||
$$PWD/qv4value.cpp \
|
||||
$$PWD/qv4executableallocator.cpp
|
||||
--- qtdeclarative-everywhere-src-5.13.0-beta1.orig/src/qml/jsruntime/jsruntime.pri
|
||||
+++ qtdeclarative-everywhere-src-5.13.0-beta1/src/qml/jsruntime/jsruntime.pri
|
||||
@@ -174,6 +174,11 @@ qmldevtools_build {
|
||||
}
|
||||
|
||||
|
||||
+linux-g++*:isEqual(QT_ARCH,i386):!no_sse2 {
|
||||
+ QMAKE_CFLAGS += -msse2 -mfpmath=sse
|
||||
@ -14,10 +14,10 @@ Index: qtdeclarative-everywhere-src-5.12.0-alpha/src/qml/jsruntime/jsruntime.pri
|
||||
valgrind {
|
||||
DEFINES += V4_USE_VALGRIND
|
||||
}
|
||||
Index: qtdeclarative-everywhere-src-5.12.0-alpha/src/qml/jsruntime/qv4global_p.h
|
||||
Index: qtdeclarative-everywhere-src-5.13.0-beta1/src/qml/jsruntime/qv4global_p.h
|
||||
===================================================================
|
||||
--- qtdeclarative-everywhere-src-5.12.0-alpha.orig/src/qml/jsruntime/qv4global_p.h
|
||||
+++ qtdeclarative-everywhere-src-5.12.0-alpha/src/qml/jsruntime/qv4global_p.h
|
||||
--- qtdeclarative-everywhere-src-5.13.0-beta1.orig/src/qml/jsruntime/qv4global_p.h
|
||||
+++ qtdeclarative-everywhere-src-5.13.0-beta1/src/qml/jsruntime/qv4global_p.h
|
||||
@@ -115,7 +115,7 @@ inline double trunc(double d) { return d
|
||||
|
||||
// Black list some platforms
|
||||
@ -27,10 +27,10 @@ Index: qtdeclarative-everywhere-src-5.12.0-alpha/src/qml/jsruntime/qv4global_p.h
|
||||
# undef V4_ENABLE_JIT
|
||||
#endif
|
||||
#endif
|
||||
Index: qtdeclarative-everywhere-src-5.12.0-alpha/src/qml/qml/v8/qv8engine.cpp
|
||||
Index: qtdeclarative-everywhere-src-5.13.0-beta1/src/qml/qml/v8/qv8engine.cpp
|
||||
===================================================================
|
||||
--- qtdeclarative-everywhere-src-5.12.0-alpha.orig/src/qml/qml/v8/qv8engine.cpp
|
||||
+++ qtdeclarative-everywhere-src-5.12.0-alpha/src/qml/qml/v8/qv8engine.cpp
|
||||
--- qtdeclarative-everywhere-src-5.13.0-beta1.orig/src/qml/qml/v8/qv8engine.cpp
|
||||
+++ qtdeclarative-everywhere-src-5.13.0-beta1/src/qml/qml/v8/qv8engine.cpp
|
||||
@@ -141,7 +141,7 @@ QV8Engine::QV8Engine(QV4::ExecutionEngin
|
||||
#ifndef Q_OS_WASM // wasm does not have working simd QTBUG-63924
|
||||
#ifdef Q_PROCESSOR_X86_32
|
||||
|
Loading…
Reference in New Issue
Block a user