Hello community, here is the log from the commit of package libqt5-qtwebchannel for openSUSE:Factory checked in at 2020-11-25 19:29:17 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libqt5-qtwebchannel (Old) and /work/SRC/openSUSE:Factory/.libqt5-qtwebchannel.new.5913 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libqt5-qtwebchannel" Wed Nov 25 19:29:17 2020 rev:27 rq:850040 version:5.15.2 Changes: -------- --- /work/SRC/openSUSE:Factory/libqt5-qtwebchannel/libqt5-qtwebchannel.changes 2020-09-14 12:10:59.248097328 +0200 +++ /work/SRC/openSUSE:Factory/.libqt5-qtwebchannel.new.5913/libqt5-qtwebchannel.changes 2020-11-25 19:29:47.158522959 +0100 @@ -1,0 +2,8 @@ +Fri Nov 20 12:09:46 UTC 2020 - Fabian Vogt <fab...@ritter-vogt.de> + +- Update to 5.15.2: + * New bugfix release + * For more details please see: + http://code.qt.io/cgit/qt/qtwebchannel.git/plain/dist/changes-5.15.2/?h=5.15.2 + +------------------------------------------------------------------- Old: ---- qtwebchannel-everywhere-src-5.15.1.tar.xz New: ---- qtwebchannel-everywhere-src-5.15.2.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libqt5-qtwebchannel.spec ++++++ --- /var/tmp/diff_new_pack.048CxB/_old 2020-11-25 19:29:47.790523581 +0100 +++ /var/tmp/diff_new_pack.048CxB/_new 2020-11-25 19:29:47.794523586 +0100 @@ -19,11 +19,11 @@ %define qt5_snapshot 0 %define libname libQt5WebChannel5 %define base_name libqt5 -%define real_version 5.15.1 -%define so_version 5.15.1 -%define tar_version qtwebchannel-everywhere-src-5.15.1 +%define real_version 5.15.2 +%define so_version 5.15.2 +%define tar_version qtwebchannel-everywhere-src-5.15.2 Name: libqt5-qtwebchannel -Version: 5.15.1 +Version: 5.15.2 Release: 0 Summary: Qt 5 WebChannel Addon License: LGPL-3.0-only OR (GPL-2.0-only OR GPL-3.0-or-later) ++++++ qtwebchannel-everywhere-src-5.15.1.tar.xz -> qtwebchannel-everywhere-src-5.15.2.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/.qmake.conf new/qtwebchannel-everywhere-src-5.15.2/.qmake.conf --- old/qtwebchannel-everywhere-src-5.15.1/.qmake.conf 2020-08-24 11:20:54.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/.qmake.conf 2020-10-27 09:02:12.000000000 +0100 @@ -1,4 +1,4 @@ load(qt_build_config) CONFIG += warning_clean -MODULE_VERSION = 5.15.1 +MODULE_VERSION = 5.15.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/.tag new/qtwebchannel-everywhere-src-5.15.2/.tag --- old/qtwebchannel-everywhere-src-5.15.1/.tag 2020-08-24 11:20:54.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/.tag 2020-10-27 09:02:12.000000000 +0100 @@ -1 +1 @@ -5bab22c141948e6215bd5239e22926b4c2e9b332 +90cffd49575b075b0dc28440c693753d860fee87 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/dist/changes-5.12.10 new/qtwebchannel-everywhere-src-5.15.2/dist/changes-5.12.10 --- old/qtwebchannel-everywhere-src-5.15.1/dist/changes-5.12.10 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebchannel-everywhere-src-5.15.2/dist/changes-5.12.10 2020-10-27 09:02:12.000000000 +0100 @@ -0,0 +1,28 @@ +Qt 5.12.10 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 5.12.9. + +For more details, refer to the online documentation included in this +distribution. The documentation is also available online: + + https://doc.qt.io/qt-5.12/index.html + +The Qt version 5.12 series is binary compatible with the 5.11.x series. +Applications compiled for 5.11 will continue to run with 5.12. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Qt Bug Tracker: + + https://bugreports.qt.io/ + +Each of these identifiers can be entered in the bug tracker to obtain more +information about a particular change. + +**************************************************************************** +* Important Behavior Changes * +**************************************************************************** + +**************************************************************************** +* Library * +**************************************************************************** + + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/dist/changes-5.15.2 new/qtwebchannel-everywhere-src-5.15.2/dist/changes-5.15.2 --- old/qtwebchannel-everywhere-src-5.15.1/dist/changes-5.15.2 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebchannel-everywhere-src-5.15.2/dist/changes-5.15.2 2020-10-27 09:02:12.000000000 +0100 @@ -0,0 +1,34 @@ +Qt 5.15.2 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 5.15.1. + +For more details, refer to the online documentation included in this +distribution. The documentation is also available online: + + https://doc.qt.io/qt-5.15/index.html + +The Qt version 5.15 series is binary compatible with the 5.14.x series. +Applications compiled for 5.14 will continue to run with 5.15. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Qt Bug Tracker: + + https://bugreports.qt.io/ + +Each of these identifiers can be entered in the bug tracker to obtain more +information about a particular change. + +**************************************************************************** +* Important Behavior Changes * +**************************************************************************** + +**************************************************************************** +* Library * +**************************************************************************** + + +General +------- + + - [QTBUG-84007] Fixed infinite recursion when dealing with self contained + objects. + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.1/QtWebChannel/private/qmetaobjectpublisher_p.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.1/QtWebChannel/private/qmetaobjectpublisher_p.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.1/QtWebChannel/private/qmetaobjectpublisher_p.h 2020-08-24 11:20:54.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.1/QtWebChannel/private/qmetaobjectpublisher_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/webchannel/qmetaobjectpublisher_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.1/QtWebChannel/private/qqmlwebchannelattached_p.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.1/QtWebChannel/private/qqmlwebchannelattached_p.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.1/QtWebChannel/private/qqmlwebchannelattached_p.h 2020-08-24 11:20:54.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.1/QtWebChannel/private/qqmlwebchannelattached_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/webchannel/qqmlwebchannelattached_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.1/QtWebChannel/private/qwebchannel_p.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.1/QtWebChannel/private/qwebchannel_p.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.1/QtWebChannel/private/qwebchannel_p.h 2020-08-24 11:20:54.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.1/QtWebChannel/private/qwebchannel_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/webchannel/qwebchannel_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.1/QtWebChannel/private/signalhandler_p.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.1/QtWebChannel/private/signalhandler_p.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.1/QtWebChannel/private/signalhandler_p.h 2020-08-24 11:20:54.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.1/QtWebChannel/private/signalhandler_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/webchannel/signalhandler_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.1/QtWebChannel/private/variantargument_p.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.1/QtWebChannel/private/variantargument_p.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.1/QtWebChannel/private/variantargument_p.h 2020-08-24 11:20:54.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.1/QtWebChannel/private/variantargument_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/webchannel/variantargument_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.2/QtWebChannel/private/qmetaobjectpublisher_p.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.2/QtWebChannel/private/qmetaobjectpublisher_p.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.2/QtWebChannel/private/qmetaobjectpublisher_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.2/QtWebChannel/private/qmetaobjectpublisher_p.h 2020-10-27 09:02:12.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/webchannel/qmetaobjectpublisher_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.2/QtWebChannel/private/qqmlwebchannelattached_p.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.2/QtWebChannel/private/qqmlwebchannelattached_p.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.2/QtWebChannel/private/qqmlwebchannelattached_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.2/QtWebChannel/private/qqmlwebchannelattached_p.h 2020-10-27 09:02:12.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/webchannel/qqmlwebchannelattached_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.2/QtWebChannel/private/qwebchannel_p.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.2/QtWebChannel/private/qwebchannel_p.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.2/QtWebChannel/private/qwebchannel_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.2/QtWebChannel/private/qwebchannel_p.h 2020-10-27 09:02:12.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/webchannel/qwebchannel_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.2/QtWebChannel/private/signalhandler_p.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.2/QtWebChannel/private/signalhandler_p.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.2/QtWebChannel/private/signalhandler_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.2/QtWebChannel/private/signalhandler_p.h 2020-10-27 09:02:12.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/webchannel/signalhandler_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.2/QtWebChannel/private/variantargument_p.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.2/QtWebChannel/private/variantargument_p.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/5.15.2/QtWebChannel/private/variantargument_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/5.15.2/QtWebChannel/private/variantargument_p.h 2020-10-27 09:02:12.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/webchannel/variantargument_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/qtwebchannelversion.h new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/qtwebchannelversion.h --- old/qtwebchannel-everywhere-src-5.15.1/include/QtWebChannel/qtwebchannelversion.h 2020-09-04 05:31:40.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/include/QtWebChannel/qtwebchannelversion.h 2020-11-12 18:24:10.000000000 +0100 @@ -2,8 +2,8 @@ #ifndef QT_QTWEBCHANNEL_VERSION_H #define QT_QTWEBCHANNEL_VERSION_H -#define QTWEBCHANNEL_VERSION_STR "5.15.1" +#define QTWEBCHANNEL_VERSION_STR "5.15.2" -#define QTWEBCHANNEL_VERSION 0x050F01 +#define QTWEBCHANNEL_VERSION 0x050F02 #endif // QT_QTWEBCHANNEL_VERSION_H diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/src/webchannel/qmetaobjectpublisher.cpp new/qtwebchannel-everywhere-src-5.15.2/src/webchannel/qmetaobjectpublisher.cpp --- old/qtwebchannel-everywhere-src-5.15.1/src/webchannel/qmetaobjectpublisher.cpp 2020-08-24 11:20:54.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/src/webchannel/qmetaobjectpublisher.cpp 2020-10-27 09:02:12.000000000 +0100 @@ -754,14 +754,21 @@ wrappedObjects.insert(id, oi); initializePropertyUpdates(object, classInfo); - } else if (wrappedObjects.contains(id)) { - Q_ASSERT(object == wrappedObjects.value(id).object); - // check if this transport is already assigned to the object - if (transport && !wrappedObjects.value(id).transports.contains(transport)) { - wrappedObjects[id].transports.append(transport); - transportedWrappedObjects.insert(transport, id); + } else { + auto oi = wrappedObjects.find(id); + if (oi != wrappedObjects.end() && !oi->isBeingWrapped) { + Q_ASSERT(object == oi->object); + // check if this transport is already assigned to the object + if (transport && !oi->transports.contains(transport)) { + oi->transports.append(transport); + transportedWrappedObjects.insert(transport, id); + } + // QTBUG-84007: Block infinite recursion for self-contained objects + // which have already been wrapped + oi->isBeingWrapped = true; + classInfo = classInfoForObject(object, transport); + oi->isBeingWrapped = false; } - classInfo = classInfoForObject(object, transport); } QJsonObject objectInfo; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/src/webchannel/qmetaobjectpublisher_p.h new/qtwebchannel-everywhere-src-5.15.2/src/webchannel/qmetaobjectpublisher_p.h --- old/qtwebchannel-everywhere-src-5.15.1/src/webchannel/qmetaobjectpublisher_p.h 2020-08-24 11:20:54.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/src/webchannel/qmetaobjectpublisher_p.h 2020-10-27 09:02:12.000000000 +0100 @@ -292,13 +292,15 @@ QHash<const QObject *, QString> registeredObjectIds; // Groups individually wrapped objects with their class information and the transports that have access to it. + // Also tags objects that are in the process of being wrapped to prevent infinite recursion. struct ObjectInfo { ObjectInfo(QObject *o = nullptr) - : object(o) + : object(o), isBeingWrapped(false) {} QObject *object; QVector<QWebChannelAbstractTransport*> transports; + bool isBeingWrapped; }; // Map of objects wrapped from invocation returns diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebchannel-everywhere-src-5.15.1/tests/auto/webchannel/tst_webchannel.cpp new/qtwebchannel-everywhere-src-5.15.2/tests/auto/webchannel/tst_webchannel.cpp --- old/qtwebchannel-everywhere-src-5.15.1/tests/auto/webchannel/tst_webchannel.cpp 2020-08-24 11:20:54.000000000 +0200 +++ new/qtwebchannel-everywhere-src-5.15.2/tests/auto/webchannel/tst_webchannel.cpp 2020-10-27 09:02:12.000000000 +0100 @@ -936,6 +936,9 @@ channel.d_func()->publisher->initializeClient(m_dummyTransport); QJsonObject objectInfo = channel.d_func()->publisher->wrapResult(QVariant::fromValue(&obj), m_dummyTransport).toObject(); + + // Wrap the result twice to test for QTBUG-84007. A single result wrap will not trigger all recursion paths. + objectInfo = channel.d_func()->publisher->wrapResult(QVariant::fromValue(&obj), m_dummyTransport).toObject(); } void TestWebChannel::testAsyncObject() _______________________________________________ openSUSE Commits mailing list -- commit@lists.opensuse.org To unsubscribe, email commit-le...@lists.opensuse.org List Netiquette: https://en.opensuse.org/openSUSE:Mailing_list_netiquette List Archives: https://lists.opensuse.org/archives/list/commit@lists.opensuse.org