Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package qt6-svg for openSUSE:Factory checked in at 2021-12-08 22:09:11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/qt6-svg (Old) and /work/SRC/openSUSE:Factory/.qt6-svg.new.31177 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qt6-svg" Wed Dec 8 22:09:11 2021 rev:11 rq:936321 version:6.2.2 Changes: -------- --- /work/SRC/openSUSE:Factory/qt6-svg/qt6-svg.changes 2021-11-04 16:09:48.309055088 +0100 +++ /work/SRC/openSUSE:Factory/.qt6-svg.new.31177/qt6-svg.changes 2021-12-08 22:10:09.622896491 +0100 @@ -1,0 +2,8 @@ +Wed Dec 1 10:06:28 UTC 2021 - Christophe Giboudeaux <christo...@krop.fr> + +- Update to 6.2.2 + * https://www.qt.io/blog/qt-6.2.2-released +- Make sure all dependencies are present when installing devel + packages. Qt >= 6.2.2 is much less permissive. + +------------------------------------------------------------------- Old: ---- qtsvg-everywhere-src-6.2.1.tar.xz New: ---- qtsvg-everywhere-src-6.2.2.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ qt6-svg.spec ++++++ --- /var/tmp/diff_new_pack.CapyjW/_old 2021-12-08 22:10:10.098896715 +0100 +++ /var/tmp/diff_new_pack.CapyjW/_new 2021-12-08 22:10:10.098896715 +0100 @@ -16,7 +16,7 @@ # -%define real_version 6.2.1 +%define real_version 6.2.2 %define short_version 6.2 %define tar_name qtsvg-everywhere-src %define tar_suffix %{nil} @@ -27,7 +27,7 @@ %endif # Name: qt6-svg%{?pkg_suffix} -Version: 6.2.1 +Version: 6.2.2 Release: 0 Summary: Classes for rendering and displaying SVG drawings License: LGPL-3.0-only OR (GPL-2.0-only OR GPL-3.0-or-later) @@ -72,8 +72,6 @@ Summary: Qt 6 SVG libraries - Development files Requires: libQt6Svg6 = %{version} Requires: libQt6SvgWidgets6 = %{version} -# Dependencies are not detected -Requires: cmake(Qt6Core) Requires: cmake(Qt6Gui) Requires: cmake(Qt6Widgets) ++++++ qtsvg-everywhere-src-6.2.1.tar.xz -> qtsvg-everywhere-src-6.2.2.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/.QT-ENTERPRISE-LICENSE-AGREEMENT new/qtsvg-everywhere-src-6.2.2/.QT-ENTERPRISE-LICENSE-AGREEMENT --- old/qtsvg-everywhere-src-6.2.1/.QT-ENTERPRISE-LICENSE-AGREEMENT 2021-10-21 18:32:35.807413300 +0200 +++ new/qtsvg-everywhere-src-6.2.2/.QT-ENTERPRISE-LICENSE-AGREEMENT 2021-11-26 23:02:15.572220600 +0100 @@ -82,7 +82,7 @@ "Distribution License(s)" shall mean the license required for any kind of sale, trade, exchange, loan, lease, rental or other distribution by or on behalf of Licensee to a third party of Redistributables in connection with Devices -ursuant to license grant described in Section 3.3 of this Agreement. +pursuant to license grant described in Section 3.3 of this Agreement. "Distribution License Packs" shall mean set of prepaid Distribution Licenses for distribution of Redistributables, as defined in The Qt Company's standard price @@ -688,7 +688,7 @@ or through an in-person visit to Licensee's place of business. Any such in-person audit shall be conducted during regular business hours at Licensee's facilities and shall not unreasonably interfere with Licensee's -usiness activities. The Qt Company or the independent auditor acting on +business activities. The Qt Company or the independent auditor acting on behalf of The Qt Company shall be entitled to inspect Licensee's Records and conduct necessary interviews of Licensee's relevant employees and Contractors. All such Licensee's Records and use thereof shall be subject @@ -1227,7 +1227,7 @@ Agreement, for a Renewal Term either as new Start-up Development Licenses (if the Licensee still qualifies as a Start-up Company), or as normal Development Licenses (if the Licensee no longer qualifies as a Start-up -ompany). +company). APPENDIX 5: NON-COMMERCIAL USE The provisions of this Appendix 5 are applicable for non-commercial use of diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/.QT-FOR-APPLICATION-DEVELOPMENT-LICENSE-AGREEMENT new/qtsvg-everywhere-src-6.2.2/.QT-FOR-APPLICATION-DEVELOPMENT-LICENSE-AGREEMENT --- old/qtsvg-everywhere-src-6.2.1/.QT-FOR-APPLICATION-DEVELOPMENT-LICENSE-AGREEMENT 2021-10-21 18:32:35.807413300 +0200 +++ new/qtsvg-everywhere-src-6.2.2/.QT-FOR-APPLICATION-DEVELOPMENT-LICENSE-AGREEMENT 2021-11-26 23:02:15.572220600 +0100 @@ -82,7 +82,7 @@ "Distribution License(s)" shall mean the license required for any kind of sale, trade, exchange, loan, lease, rental or other distribution by or on behalf of Licensee to a third party of Redistributables in connection with Devices -ursuant to license grant described in Section 3.3 of this Agreement. +pursuant to license grant described in Section 3.3 of this Agreement. "Distribution License Packs" shall mean set of prepaid Distribution Licenses for distribution of Redistributables, as defined in The Qt Company's standard price @@ -688,7 +688,7 @@ or through an in-person visit to Licensee's place of business. Any such in-person audit shall be conducted during regular business hours at Licensee's facilities and shall not unreasonably interfere with Licensee's -usiness activities. The Qt Company or the independent auditor acting on +business activities. The Qt Company or the independent auditor acting on behalf of The Qt Company shall be entitled to inspect Licensee's Records and conduct necessary interviews of Licensee's relevant employees and Contractors. All such Licensee's Records and use thereof shall be subject @@ -1227,7 +1227,7 @@ Agreement, for a Renewal Term either as new Start-up Development Licenses (if the Licensee still qualifies as a Start-up Company), or as normal Development Licenses (if the Licensee no longer qualifies as a Start-up -ompany). +company). APPENDIX 5: NON-COMMERCIAL USE The provisions of this Appendix 5 are applicable for non-commercial use of diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/.QT-FOR-AUTOMATION-LICENSE-AGREEMENT new/qtsvg-everywhere-src-6.2.2/.QT-FOR-AUTOMATION-LICENSE-AGREEMENT --- old/qtsvg-everywhere-src-6.2.1/.QT-FOR-AUTOMATION-LICENSE-AGREEMENT 2021-10-21 18:32:35.807413300 +0200 +++ new/qtsvg-everywhere-src-6.2.2/.QT-FOR-AUTOMATION-LICENSE-AGREEMENT 2021-11-26 23:02:15.572220600 +0100 @@ -82,7 +82,7 @@ "Distribution License(s)" shall mean the license required for any kind of sale, trade, exchange, loan, lease, rental or other distribution by or on behalf of Licensee to a third party of Redistributables in connection with Devices -ursuant to license grant described in Section 3.3 of this Agreement. +pursuant to license grant described in Section 3.3 of this Agreement. "Distribution License Packs" shall mean set of prepaid Distribution Licenses for distribution of Redistributables, as defined in The Qt Company's standard price @@ -688,7 +688,7 @@ or through an in-person visit to Licensee's place of business. Any such in-person audit shall be conducted during regular business hours at Licensee's facilities and shall not unreasonably interfere with Licensee's -usiness activities. The Qt Company or the independent auditor acting on +business activities. The Qt Company or the independent auditor acting on behalf of The Qt Company shall be entitled to inspect Licensee's Records and conduct necessary interviews of Licensee's relevant employees and Contractors. All such Licensee's Records and use thereof shall be subject @@ -1227,7 +1227,7 @@ Agreement, for a Renewal Term either as new Start-up Development Licenses (if the Licensee still qualifies as a Start-up Company), or as normal Development Licenses (if the Licensee no longer qualifies as a Start-up -ompany). +company). APPENDIX 5: NON-COMMERCIAL USE The provisions of this Appendix 5 are applicable for non-commercial use of diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/.QT-FOR-DEVICE-CREATION-LICENSE-AGREEMENT new/qtsvg-everywhere-src-6.2.2/.QT-FOR-DEVICE-CREATION-LICENSE-AGREEMENT --- old/qtsvg-everywhere-src-6.2.1/.QT-FOR-DEVICE-CREATION-LICENSE-AGREEMENT 2021-10-21 18:32:35.807413300 +0200 +++ new/qtsvg-everywhere-src-6.2.2/.QT-FOR-DEVICE-CREATION-LICENSE-AGREEMENT 2021-11-26 23:02:15.572220600 +0100 @@ -82,7 +82,7 @@ "Distribution License(s)" shall mean the license required for any kind of sale, trade, exchange, loan, lease, rental or other distribution by or on behalf of Licensee to a third party of Redistributables in connection with Devices -ursuant to license grant described in Section 3.3 of this Agreement. +pursuant to license grant described in Section 3.3 of this Agreement. "Distribution License Packs" shall mean set of prepaid Distribution Licenses for distribution of Redistributables, as defined in The Qt Company's standard price @@ -688,7 +688,7 @@ or through an in-person visit to Licensee's place of business. Any such in-person audit shall be conducted during regular business hours at Licensee's facilities and shall not unreasonably interfere with Licensee's -usiness activities. The Qt Company or the independent auditor acting on +business activities. The Qt Company or the independent auditor acting on behalf of The Qt Company shall be entitled to inspect Licensee's Records and conduct necessary interviews of Licensee's relevant employees and Contractors. All such Licensee's Records and use thereof shall be subject @@ -1227,7 +1227,7 @@ Agreement, for a Renewal Term either as new Start-up Development Licenses (if the Licensee still qualifies as a Start-up Company), or as normal Development Licenses (if the Licensee no longer qualifies as a Start-up -ompany). +company). APPENDIX 5: NON-COMMERCIAL USE The provisions of this Appendix 5 are applicable for non-commercial use of diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/.cmake.conf new/qtsvg-everywhere-src-6.2.2/.cmake.conf --- old/qtsvg-everywhere-src-6.2.1/.cmake.conf 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/.cmake.conf 2021-11-24 03:20:27.000000000 +0100 @@ -1,2 +1,2 @@ -set(QT_REPO_MODULE_VERSION "6.2.1") +set(QT_REPO_MODULE_VERSION "6.2.2") set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/.qmake.conf new/qtsvg-everywhere-src-6.2.2/.qmake.conf --- old/qtsvg-everywhere-src-6.2.1/.qmake.conf 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/.qmake.conf 2021-11-24 03:20:27.000000000 +0100 @@ -3,4 +3,4 @@ CONFIG += warning_clean DEFINES += QT_NO_FOREACH -MODULE_VERSION = 6.2.1 +MODULE_VERSION = 6.2.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/.tag new/qtsvg-everywhere-src-6.2.2/.tag --- old/qtsvg-everywhere-src-6.2.1/.tag 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/.tag 2021-11-24 03:20:27.000000000 +0100 @@ -1 +1 @@ -bb5a847d9b2f388aa348bdd3158b125a77091ccf +c858f65c04fa5b07f8b8ae539a48d4a89ceb9bac diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/dependencies.yaml new/qtsvg-everywhere-src-6.2.2/dependencies.yaml --- old/qtsvg-everywhere-src-6.2.1/dependencies.yaml 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/dependencies.yaml 2021-11-24 03:20:27.000000000 +0100 @@ -1,4 +1,4 @@ dependencies: ../qtbase: - ref: 9fa805f7f8dfe96d561e9ed3170770ad768baf93 + ref: eae95814a46386f8930eeae5486513a78a7a4ddc required: true diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvgfont_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvgfont_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvgfont_p.h 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvgfont_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/svg/qsvgfont_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvggraphics_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvggraphics_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvggraphics_p.h 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvggraphics_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/svg/qsvggraphics_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvghandler_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvghandler_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvghandler_p.h 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvghandler_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/svg/qsvghandler_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvgnode_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvgnode_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvgnode_p.h 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvgnode_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/svg/qsvgnode_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvgstructure_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvgstructure_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvgstructure_p.h 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvgstructure_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/svg/qsvgstructure_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvgstyle_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvgstyle_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvgstyle_p.h 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvgstyle_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/svg/qsvgstyle_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvgtinydocument_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvgtinydocument_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qsvgtinydocument_p.h 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qsvgtinydocument_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/svg/qsvgtinydocument_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qtsvgglobal_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qtsvgglobal_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.1/QtSvg/private/qtsvgglobal_p.h 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.1/QtSvg/private/qtsvgglobal_p.h 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "../../../../../src/svg/qtsvgglobal_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvgfont_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvgfont_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvgfont_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvgfont_p.h 2021-11-24 03:20:27.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/svg/qsvgfont_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvggraphics_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvggraphics_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvggraphics_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvggraphics_p.h 2021-11-24 03:20:27.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/svg/qsvggraphics_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvghandler_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvghandler_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvghandler_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvghandler_p.h 2021-11-24 03:20:27.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/svg/qsvghandler_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvgnode_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvgnode_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvgnode_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvgnode_p.h 2021-11-24 03:20:27.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/svg/qsvgnode_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvgstructure_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvgstructure_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvgstructure_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvgstructure_p.h 2021-11-24 03:20:27.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/svg/qsvgstructure_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvgstyle_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvgstyle_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvgstyle_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvgstyle_p.h 2021-11-24 03:20:27.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/svg/qsvgstyle_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvgtinydocument_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvgtinydocument_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qsvgtinydocument_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qsvgtinydocument_p.h 2021-11-24 03:20:27.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/svg/qsvgtinydocument_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qtsvgglobal_p.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qtsvgglobal_p.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/6.2.2/QtSvg/private/qtsvgglobal_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/6.2.2/QtSvg/private/qtsvgglobal_p.h 2021-11-24 03:20:27.000000000 +0100 @@ -0,0 +1 @@ +#include "../../../../../src/svg/qtsvgglobal_p.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvg/qtsvgversion.h new/qtsvg-everywhere-src-6.2.2/include/QtSvg/qtsvgversion.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvg/qtsvgversion.h 2021-10-21 18:32:35.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvg/qtsvgversion.h 2021-11-26 23:02:15.000000000 +0100 @@ -2,8 +2,8 @@ #ifndef QT_QTSVG_VERSION_H #define QT_QTSVG_VERSION_H -#define QTSVG_VERSION_STR "6.2.1" +#define QTSVG_VERSION_STR "6.2.2" -#define QTSVG_VERSION 0x060201 +#define QTSVG_VERSION 0x060202 #endif // QT_QTSVG_VERSION_H diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/include/QtSvgWidgets/qtsvgwidgetsversion.h new/qtsvg-everywhere-src-6.2.2/include/QtSvgWidgets/qtsvgwidgetsversion.h --- old/qtsvg-everywhere-src-6.2.1/include/QtSvgWidgets/qtsvgwidgetsversion.h 2021-10-21 18:32:35.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/include/QtSvgWidgets/qtsvgwidgetsversion.h 2021-11-26 23:02:15.000000000 +0100 @@ -2,8 +2,8 @@ #ifndef QT_QTSVGWIDGETS_VERSION_H #define QT_QTSVGWIDGETS_VERSION_H -#define QTSVGWIDGETS_VERSION_STR "6.2.1" +#define QTSVGWIDGETS_VERSION_STR "6.2.2" -#define QTSVGWIDGETS_VERSION 0x060201 +#define QTSVGWIDGETS_VERSION 0x060202 #endif // QT_QTSVGWIDGETS_VERSION_H diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/src/plugins/imageformats/svg/qsvgiohandler.cpp new/qtsvg-everywhere-src-6.2.2/src/plugins/imageformats/svg/qsvgiohandler.cpp --- old/qtsvg-everywhere-src-6.2.1/src/plugins/imageformats/svg/qsvgiohandler.cpp 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/src/plugins/imageformats/svg/qsvgiohandler.cpp 2021-11-24 03:20:27.000000000 +0100 @@ -184,6 +184,8 @@ if (finalSize.isEmpty()) { *image = QImage(); } else { + if (qMax(finalSize.width(), finalSize.height()) > 0xffff) + return false; // Assume corrupted file if (!QImageIOHandler::allocateImage(finalSize, QImage::Format_ARGB32_Premultiplied, image)) return false; image->fill(d->backColor.rgba()); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/src/svg/qsvghandler.cpp new/qtsvg-everywhere-src-6.2.2/src/svg/qsvghandler.cpp --- old/qtsvg-everywhere-src-6.2.1/src/svg/qsvghandler.cpp 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/src/svg/qsvghandler.cpp 2021-11-24 03:20:27.000000000 +0100 @@ -1597,6 +1597,7 @@ static bool parsePathDataFast(QStringView dataStr, QPainterPath &path) { + const int maxElementCount = 0x7fff; // Assume file corruption if more path elements than this qreal x0 = 0, y0 = 0; // starting point qreal x = 0, y = 0; // current point char lastMode = 0; @@ -1604,7 +1605,8 @@ const QChar *str = dataStr.constData(); const QChar *end = str + dataStr.size(); - while (str != end) { + bool ok = true; + while (ok && str != end) { while (str->isSpace() && (str + 1) != end) ++str; QChar pathElem = *str; @@ -1621,14 +1623,13 @@ arg.append(0);//dummy const qreal *num = arg.constData(); int count = arg.count(); - while (count > 0) { + while (ok && count > 0) { qreal offsetX = x; // correction offsets qreal offsetY = y; // for relative commands switch (pathElem.unicode()) { case 'm': { if (count < 2) { - num++; - count--; + ok = false; break; } x = x0 = num[0] + offsetX; @@ -1645,8 +1646,7 @@ break; case 'M': { if (count < 2) { - num++; - count--; + ok = false; break; } x = x0 = num[0]; @@ -1672,8 +1672,7 @@ break; case 'l': { if (count < 2) { - num++; - count--; + ok = false; break; } x = num[0] + offsetX; @@ -1686,8 +1685,7 @@ break; case 'L': { if (count < 2) { - num++; - count--; + ok = false; break; } x = num[0]; @@ -1727,8 +1725,7 @@ break; case 'c': { if (count < 6) { - num += count; - count = 0; + ok = false; break; } QPointF c1(num[0] + offsetX, num[1] + offsetY); @@ -1744,8 +1741,7 @@ } case 'C': { if (count < 6) { - num += count; - count = 0; + ok = false; break; } QPointF c1(num[0], num[1]); @@ -1761,8 +1757,7 @@ } case 's': { if (count < 4) { - num += count; - count = 0; + ok = false; break; } QPointF c1; @@ -1783,8 +1778,7 @@ } case 'S': { if (count < 4) { - num += count; - count = 0; + ok = false; break; } QPointF c1; @@ -1805,8 +1799,7 @@ } case 'q': { if (count < 4) { - num += count; - count = 0; + ok = false; break; } QPointF c(num[0] + offsetX, num[1] + offsetY); @@ -1821,8 +1814,7 @@ } case 'Q': { if (count < 4) { - num += count; - count = 0; + ok = false; break; } QPointF c(num[0], num[1]); @@ -1837,8 +1829,7 @@ } case 't': { if (count < 2) { - num += count; - count = 0; + ok = false; break; } QPointF e(num[0] + offsetX, num[1] + offsetY); @@ -1858,8 +1849,7 @@ } case 'T': { if (count < 2) { - num += count; - count = 0; + ok = false; break; } QPointF e(num[0], num[1]); @@ -1879,8 +1869,7 @@ } case 'a': { if (count < 7) { - num += count; - count = 0; + ok = false; break; } qreal rx = (*num++); @@ -1902,8 +1891,7 @@ break; case 'A': { if (count < 7) { - num += count; - count = 0; + ok = false; break; } qreal rx = (*num++); @@ -1924,12 +1912,15 @@ } break; default: - return false; + ok = false; + break; } lastMode = pathElem.toLatin1(); + if (path.elementCount() > maxElementCount) + ok = false; } } - return true; + return ok; } static bool parseStyle(QSvgNode *node, @@ -2987,8 +2978,8 @@ QPainterPath qpath; qpath.setFillRule(Qt::WindingFill); - //XXX do error handling - parsePathDataFast(data, qpath); + if (!parsePathDataFast(data, qpath)) + qCWarning(lcSvgHandler, "Invalid path data; path truncated."); QSvgNode *path = new QSvgPath(parent, qpath); return path; @@ -3688,7 +3679,7 @@ --remainingUnfinishedElements; } else { delete m_doc; - m_doc = 0; + m_doc = nullptr; return; } break; @@ -3829,8 +3820,9 @@ } else if (node->type() == QSvgNode::TSPAN) { static_cast<QSvgTspan *>(node)->setWhitespaceMode(m_whitespaceMode.top()); } else if (node->type() == QSvgNode::USE) { - if (!static_cast<QSvgUse *>(node)->isResolved()) - m_resolveNodes.append(node); + auto useNode = static_cast<QSvgUse *>(node); + if (!useNode->isResolved()) + m_toBeResolved.append(useNode); } } } @@ -3937,17 +3929,16 @@ void QSvgHandler::resolveNodes() { - for (QSvgNode *node : qAsConst(m_resolveNodes)) { - if (!node || !node->parent() || node->type() != QSvgNode::USE) - continue; - QSvgUse *useNode = static_cast<QSvgUse *>(node); - if (useNode->isResolved()) + for (QSvgUse *useNode : qAsConst(m_toBeResolved)) { + const auto parent = useNode->parent(); + if (!parent) continue; - QSvgNode::Type t = useNode->parent()->type(); - if (!(t == QSvgNode::DOC || t == QSvgNode::DEFS || t == QSvgNode::G || t == QSvgNode::SWITCH)) + + QSvgNode::Type t = parent->type(); + if (t != QSvgNode::DOC && t != QSvgNode::DEFS && t != QSvgNode::G && t != QSvgNode::SWITCH) continue; - QSvgStructureNode *group = static_cast<QSvgStructureNode *>(useNode->parent()); + QSvgStructureNode *group = static_cast<QSvgStructureNode *>(parent); QSvgNode *link = group->scopeNode(useNode->linkId()); if (!link) { qCWarning(lcSvgHandler, "link #%s is undefined!", qPrintable(useNode->linkId())); @@ -3959,7 +3950,7 @@ useNode->setLink(link); } - m_resolveNodes.clear(); + m_toBeResolved.clear(); } bool QSvgHandler::characters(const QStringView str) @@ -3990,7 +3981,7 @@ return xml->device(); } -QSvgTinyDocument * QSvgHandler::document() const +QSvgTinyDocument *QSvgHandler::document() const { return m_doc; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtsvg-everywhere-src-6.2.1/src/svg/qsvghandler_p.h new/qtsvg-everywhere-src-6.2.2/src/svg/qsvghandler_p.h --- old/qtsvg-everywhere-src-6.2.1/src/svg/qsvghandler_p.h 2021-10-21 08:22:59.000000000 +0200 +++ new/qtsvg-everywhere-src-6.2.2/src/svg/qsvghandler_p.h 2021-11-24 03:20:27.000000000 +0100 @@ -144,9 +144,10 @@ void init(); QSvgTinyDocument *m_doc; - QStack<QSvgNode*> m_nodes; - - QList<QSvgNode*> m_resolveNodes; + QStack<QSvgNode *> m_nodes; + // TODO: This is only needed during parsing, so it unnecessarily takes up space after that. + // Temporary container for <use> nodes which haven't been resolved yet. + QList<QSvgUse *> m_toBeResolved; enum CurrentNode {