Date: Saturday, May 18, 2019 @ 17:52:52 Author: arojas Revision: 353601
Fix crash in SDDM Breeze theme Added: qt5-declarative/kde-unstable/qtbug-75203.patch Modified: qt5-declarative/kde-unstable/PKGBUILD -------------------+ PKGBUILD | 11 ++++++++--- qtbug-75203.patch | 28 ++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 3 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2019-05-18 17:47:25 UTC (rev 353600) +++ PKGBUILD 2019-05-18 17:52:52 UTC (rev 353601) @@ -4,7 +4,7 @@ pkgname=qt5-declarative _qtver=5.13.0-beta3 pkgver=${_qtver/-/} -pkgrel=1 +pkgrel=2 arch=('x86_64') url='https://www.qt.io' license=('GPL3' 'LGPL3' 'FDL' 'custom') @@ -14,11 +14,16 @@ groups=('qt' 'qt5') conflicts=('qtchooser') _pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}" -source=("https://download.qt.io/development_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") -sha256sums=('cd4d9c562c8a6e434a786fb288e53337f9e7f5d7a12f264ff274272dbc20cb18') +source=("https://download.qt.io/development_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" + qtbug-75203.patch) +sha256sums=('cd4d9c562c8a6e434a786fb288e53337f9e7f5d7a12f264ff274272dbc20cb18' + '458d8d4e5f2d96b4c1cb78937140ceaf966b57213fdbe84d0df33d5a41508028') prepare() { mkdir -p build + + cd $_pkgfqn + patch -p1 -i ../qtbug-75203.patch # Fix crash in SDDM Breeze theme } build() { Added: qtbug-75203.patch =================================================================== --- qtbug-75203.patch (rev 0) +++ qtbug-75203.patch 2019-05-18 17:52:52 UTC (rev 353601) @@ -0,0 +1,28 @@ +From ea74f0c68cddf706c950d3910cf7b363fe24885b Mon Sep 17 00:00:00 2001 +From: Ulf Hermann <ulf.herm...@qt.io> +Date: Wed, 17 Apr 2019 12:35:42 +0200 +Subject: Don't crash when accessing invalid properties through QObjectWrapper + +Change-Id: I613bf5dc685bb4235262b429d8f7318ea144fb9d +Fixes: QTBUG-75203 +Reviewed-by: Erik Verbruggen <erik.verbrug...@qt.io> +--- + src/qml/jsruntime/qv4qobjectwrapper.cpp | 2 +- + .../data/undefinedPropertiesInObjectWrapper.qml | 20 ++++++++++++++++++++ + tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp | 10 ++++++++++ + 3 files changed, 31 insertions(+), 1 deletion(-) + create mode 100644 tests/auto/qml/qqmlecmascript/data/undefinedPropertiesInObjectWrapper.qml + +diff --git a/src/qml/jsruntime/qv4qobjectwrapper.cpp b/src/qml/jsruntime/qv4qobjectwrapper.cpp +index 377c30617..5467e730e 100644 +--- a/src/qml/jsruntime/qv4qobjectwrapper.cpp ++++ b/src/qml/jsruntime/qv4qobjectwrapper.cpp +@@ -856,7 +856,7 @@ ReturnedValue QObjectWrapper::virtualResolveLookupGetter(const Object *object, E + 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); +