diff --git a/desktop/toolkit/qt5/qt5-connectivity/pspec.xml b/desktop/toolkit/qt5/qt5-connectivity/pspec.xml
index d3b944528a..ee230dc15b 100755
--- a/desktop/toolkit/qt5/qt5-connectivity/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-connectivity/pspec.xml
@@ -11,21 +11,21 @@
Provides access to Bluetooth hardware
Provides access to Bluetooth hardware
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtconnectivity-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtconnectivity-everywhere-opensource-src-5.15.7.tar.xz
bluez-libs-devel
- qt5-sql-sqlite
- qt5-base-devel
- qt5-assistant-devel
- qt5-declarative-devel
+ qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-declarative-devel
qt5-connectivity
- qt5-base
- qt5-declarative
+ qt5-base
+ qt5-declarative
bluez-libs
libgcc
@@ -46,7 +46,7 @@
qt5-connectivity
- qt5-base-devel
+ qt5-base-devel
@@ -61,6 +61,13 @@
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-doc/pspec.xml b/desktop/toolkit/qt5/qt5-doc/pspec.xml
index 94b1860e71..73b1ea75ba 100755
--- a/desktop/toolkit/qt5/qt5-doc/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-doc/pspec.xml
@@ -12,40 +12,40 @@
A cross-platform application and UI framework (Documentation)
A cross-platform application and UI framework (Documentation)
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtdoc-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtdoc-everywhere-opensource-src-5.15.7.tar.xz
- qt5-base-devel
- qt5-sql-sqlite
- qt5-assistant
- qt5-multimedia-docs
- qt5-quickcontrols-docs
- qt5-quickcontrols2-docs
- qt5-x11extras-docs
- qt5-webchannel-docs
+ qt5-base-devel
+ qt5-sql-sqlite
+ qt5-assistant
+ qt5-multimedia-docs
+ qt5-quickcontrols-docs
+ qt5-quickcontrols2-docs
+ qt5-x11extras-docs
+ qt5-webchannel-docs
qt5-webkit-docs
- qt5-xmlpatterns-docs
- qt5-svg-docs
- qt5-script-docs
- qt5-sensors-docs
- qt5-translations
- qt5-graphicaleffects-docs
- qt5-imageformats-docs
- qt5-websockets-docs
- qt5-serialport-docs
- qt5-location-docs
- qt5-connectivity-docs
+ qt5-xmlpatterns-docs
+ qt5-svg-docs
+ qt5-script-docs
+ qt5-sensors-docs
+ qt5-translations
+ qt5-graphicaleffects-docs
+ qt5-imageformats-docs
+ qt5-websockets-docs
+ qt5-serialport-docs
+ qt5-location-docs
+ qt5-connectivity-docs
qt5-doc
- qt5-base
- qt5-script
- qt5-svg
- qt5-xmlpatterns
- qt5-assistant
- qt5-declarative
+ qt5-base
+ qt5-script
+ qt5-svg
+ qt5-xmlpatterns
+ qt5-assistant
+ qt5-declarative
/usr/share/licenses
@@ -54,6 +54,13 @@
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-graphicaleffects/pspec.xml b/desktop/toolkit/qt5/qt5-graphicaleffects/pspec.xml
index aca8c5a3d1..6256b2ff92 100755
--- a/desktop/toolkit/qt5/qt5-graphicaleffects/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-graphicaleffects/pspec.xml
@@ -11,20 +11,20 @@
Graphical effects for use with Qt Quick 2
Graphical effects for use with Qt Quick 2
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtgraphicaleffects-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtgraphicaleffects-everywhere-opensource-src-5.15.7.tar.xz
- qt5-sql-sqlite
- qt5-base-devel
- qt5-assistant-devel
- qt5-declarative-devel
+ qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-declarative-devel
qt5-graphicaleffects
- qt5-base
- qt5-declarative
+ qt5-base
+ qt5-declarative
libgcc
@@ -38,7 +38,7 @@
qt5-graphicaleffects-docs
- qt5-base
+ qt5-base
/usr/share/doc/qt5
@@ -46,6 +46,13 @@
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-imageformats/pspec.xml b/desktop/toolkit/qt5/qt5-imageformats/pspec.xml
index dd9b708cfa..447febadda 100755
--- a/desktop/toolkit/qt5/qt5-imageformats/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-imageformats/pspec.xml
@@ -11,11 +11,11 @@
Plugins for additional image formats: TIFF, MNG, TGA, WBMP
Plugins for additional image formats: TIFF, MNG, TGA, WBMP
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtimageformats-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtimageformats-everywhere-opensource-src-5.15.7.tar.xz
- qt5-base-devel
- qt5-assistant-devel
- qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-sql-sqlite
jasper-devel
libmng-devel
libjpeg-turbo-devel
@@ -28,7 +28,7 @@
qt5-imageformats
- qt5-base
+ qt5-base
libgcc
libmng
tiff
@@ -45,7 +45,7 @@
qt5-imageformats-docs
- qt5-base
+ qt5-base
/usr/share/doc
@@ -53,6 +53,13 @@
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-keychain/pspec.xml b/desktop/toolkit/qt5/qt5-keychain/pspec.xml
index a5317ca763..46137107e9 100755
--- a/desktop/toolkit/qt5/qt5-keychain/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-keychain/pspec.xml
@@ -48,6 +48,13 @@
+
+ 2022-12-21
+ 0.13.2
+ Rebuild qt5.15.7
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
0.13.2
diff --git a/desktop/toolkit/qt5/qt5-location/pspec.xml b/desktop/toolkit/qt5/qt5-location/pspec.xml
index a5236e082d..7152f15c14 100755
--- a/desktop/toolkit/qt5/qt5-location/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-location/pspec.xml
@@ -11,7 +11,7 @@
Provides access to position, satellite and area monitoring classes
Provides access to position, satellite and area monitoring classes
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtlocation-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtlocation-everywhere-opensource-src-5.15.7.tar.xz
mesa-devel
zlib-devel
@@ -20,10 +20,10 @@
gconf-devel
glib2-devel
geoclue-devel
- qt5-sql-sqlite
- qt5-base-devel
- qt5-assistant-devel
- qt5-declarative-devel
+ qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-declarative-devel
@@ -37,8 +37,8 @@
gypsy
libgcc
geoclue
- qt5-base
- qt5-declarative
+ qt5-base
+ qt5-declarative
/usr/lib
@@ -55,15 +55,15 @@
qt5-location
- qt5-base-devel
- qt5-declarative-devel
+ qt5-base-devel
+ qt5-declarative-devel
qt5-location-docs
- qt5-base
+ qt5-base
/usr/share/doc
@@ -71,6 +71,13 @@
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-multimedia/pspec.xml b/desktop/toolkit/qt5/qt5-multimedia/pspec.xml
index 4edee8f420..4cbcd98b6e 100755
--- a/desktop/toolkit/qt5/qt5-multimedia/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-multimedia/pspec.xml
@@ -11,7 +11,7 @@
Classes for audio, video, radio and camera functionality
Classes for audio, video, radio and camera functionality
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtmultimedia-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtmultimedia-everywhere-opensource-src-5.15.7.tar.xz
icu4c-devel
openal-devel
@@ -20,10 +20,10 @@
pulseaudio-libs-devel
gst-plugins-bad-devel
mesa-devel
- qt5-sql-sqlite
- qt5-base-devel
- qt5-assistant-devel
- qt5-declarative-devel
+ qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-declarative-devel
gst-plugins-base-devel
@@ -44,8 +44,8 @@
gst-plugins-bad
pulseaudio-libs
mesa
- qt5-base
- qt5-declarative
+ qt5-base
+ qt5-declarative
gst-plugins-base
@@ -58,8 +58,8 @@
qt5-multimedia
- qt5-base-devel
- qt5-declarative-devel
+ qt5-base-devel
+ qt5-declarative-devel
@@ -69,11 +69,18 @@
/usr/share/doc
- qt5-base
+ qt5-base
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-quickcontrols/pspec.xml b/desktop/toolkit/qt5/qt5-quickcontrols/pspec.xml
index 4151cd9996..76253d0258 100755
--- a/desktop/toolkit/qt5/qt5-quickcontrols/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-quickcontrols/pspec.xml
@@ -11,13 +11,13 @@
Reusable Qt Quick based UI controls to create classic desktop-style user interfaces
Reusable Qt Quick based UI controls to create classic desktop-style user interfaces
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtquickcontrols-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtquickcontrols-everywhere-opensource-src-5.15.7.tar.xz
mesa-devel
- qt5-sql-sqlite
- qt5-base-devel
- qt5-assistant-devel
- qt5-declarative-devel
+ qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-declarative-devel
@@ -25,8 +25,8 @@
qt5-quickcontrols
libgcc
- qt5-base
- qt5-declarative
+ qt5-base
+ qt5-declarative
/usr/lib
@@ -38,7 +38,7 @@
qt5-quickcontrols-docs
- qt5-base
+ qt5-base
/usr/share/doc
@@ -46,6 +46,13 @@
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-remoteobjects/pspec.xml b/desktop/toolkit/qt5/qt5-remoteobjects/pspec.xml
index 23802a7c3b..5475f804e8 100755
--- a/desktop/toolkit/qt5/qt5-remoteobjects/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-remoteobjects/pspec.xml
@@ -12,12 +12,12 @@
LGPLv2.1-linking-exception
Inter-process communication (IPC) module developed for Qt
qt5-remoteobjects, Inter-process communication (IPC) module developed for Qt
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtremoteobjects-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtremoteobjects-everywhere-opensource-src-5.15.7.tar.xz
- qt5-base-devel
- qt5-sql-sqlite
- qt5-assistant-devel
- qt5-declarative-devel
+ qt5-base-devel
+ qt5-sql-sqlite
+ qt5-assistant-devel
+ qt5-declarative-devel
@@ -25,9 +25,9 @@
qt5-remoteobjects
Inter-process communication (IPC) module developed for Qt
- qt5-base
- qt5-assistant
- qt5-declarative
+ qt5-base
+ qt5-assistant
+ qt5-declarative
/usr/lib
@@ -46,8 +46,8 @@
qt5-remoteobjects
- qt5-base-devel
- qt5-declarative-devel
+ qt5-base-devel
+ qt5-declarative-devel
@@ -55,7 +55,7 @@
qt5-remoteobjects-docs
Documentation files for qt5-remoteobjects
- qt5-remoteobjects
+ qt5-remoteobjects
/usr/share/doc
@@ -63,6 +63,13 @@
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-script/pspec.xml b/desktop/toolkit/qt5/qt5-script/pspec.xml
index b19b89ae5d..cbb5136883 100755
--- a/desktop/toolkit/qt5/qt5-script/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-script/pspec.xml
@@ -11,11 +11,11 @@
Classes for making Qt applications scriptable. Provided for Qt 5.x compatibility
Classes for making Qt applications scriptable. Provided for Qt 5.x compatibility
LGPLv2.1-linking-exception
- https://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtscript-everywhere-opensource-src-5.15.5.tar.xz
+ https://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtscript-everywhere-opensource-src-5.15.7.tar.xz
- qt5-base-devel
- qt5-assistant-devel
- qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-sql-sqlite
mesa-devel
libgcc
@@ -24,7 +24,7 @@
qt5-script
- qt5-base
+ qt5-base
libgcc
@@ -37,7 +37,7 @@
qt5-script-devel
- qt5-base-devel
+ qt5-base-devel
qt5-script
@@ -49,7 +49,7 @@
qt5-script-docs
- qt5-base
+ qt5-base
/usr/share/doc/qt5
@@ -57,6 +57,13 @@
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-sensors/pspec.xml b/desktop/toolkit/qt5/qt5-sensors/pspec.xml
index 6254794d5e..4276579bcf 100755
--- a/desktop/toolkit/qt5/qt5-sensors/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-sensors/pspec.xml
@@ -11,12 +11,12 @@
Provides access to sensor hardware and motion gesture recognition
Provides access to sensor hardware and motion gesture recognition
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtsensors-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtsensors-everywhere-opensource-src-5.15.7.tar.xz
- qt5-sql-sqlite
- qt5-base-devel
- qt5-assistant-devel
- qt5-declarative-devel
+ qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-declarative-devel
@@ -24,8 +24,8 @@
qt5-sensors
libgcc
- qt5-base
- qt5-declarative
+ qt5-base
+ qt5-declarative
/usr/lib
@@ -38,7 +38,7 @@
qt5-sensors-devel
qt5-sensors
- qt5-base-devel
+ qt5-base-devel
/usr/lib/pkgconfig
@@ -49,7 +49,7 @@
qt5-sensors-docs
- qt5-base
+ qt5-base
/usr/share/doc/qt5
@@ -58,6 +58,13 @@
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-serialport/pspec.xml b/desktop/toolkit/qt5/qt5-serialport/pspec.xml
index ea208573dc..129c473ec5 100755
--- a/desktop/toolkit/qt5/qt5-serialport/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-serialport/pspec.xml
@@ -11,11 +11,11 @@
Provides access to hardware and virtual serial ports
Provides access to hardware and virtual serial ports
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtserialport-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtserialport-everywhere-opensource-src-5.15.7.tar.xz
- qt5-base-devel
- qt5-assistant-devel
- qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-sql-sqlite
eudev-devel
@@ -23,7 +23,7 @@
qt5-serialport
- qt5-base
+ qt5-base
eudev
libgcc
@@ -37,7 +37,7 @@
qt5-serialport-devel
- qt5-base-devel
+ qt5-base-devel
qt5-serialport
@@ -49,7 +49,7 @@
qt5-serialport-docs
- qt5-base
+ qt5-base
/usr/share/doc/qt5
@@ -57,6 +57,13 @@
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-svg/files/qt_kde.patch b/desktop/toolkit/qt5/qt5-svg/files/qt_kde.patch
index 22461e3010..c9b5e09ac6 100644
--- a/desktop/toolkit/qt5/qt5-svg/files/qt_kde.patch
+++ b/desktop/toolkit/qt5/qt5-svg/files/qt_kde.patch
@@ -12,43 +12,16 @@ index 4136aaf..fd3529a 100644
QPainter p(image);
d->r.render(&p, bounds);
diff --git a/src/svg/qsvghandler.cpp b/src/svg/qsvghandler.cpp
-index 9dac05c..f2653af 100644
+index 299efac..8dda563 100644
--- a/src/svg/qsvghandler.cpp
+++ b/src/svg/qsvghandler.cpp
-@@ -728,15 +728,25 @@ static QVector parseNumbersList(const QChar *&str)
- return points;
- }
-
--static inline void parseNumbersArray(const QChar *&str, QVarLengthArray &points)
-+static inline void parseNumbersArray(const QChar *&str, QVarLengthArray &points,
-+ const char *pattern = nullptr)
- {
-+ const size_t patternLen = qstrlen(pattern);
- while (str->isSpace())
- ++str;
- while (isDigit(str->unicode()) ||
- *str == QLatin1Char('-') || *str == QLatin1Char('+') ||
- *str == QLatin1Char('.')) {
-
-- points.append(toDouble(str));
-+ if (patternLen && pattern[points.size() % patternLen] == 'f') {
-+ // flag expected, may only be 0 or 1
-+ if (*str != QLatin1Char('0') && *str != QLatin1Char('1'))
-+ return;
-+ points.append(*str == QLatin1Char('0') ? 0.0 : 1.0);
-+ ++str;
-+ } else {
-+ points.append(toDouble(str));
-+ }
-
- while (str->isSpace())
- ++str;
-@@ -1383,8 +1393,10 @@ static void parseFont(QSvgNode *node,
+@@ -1393,9 +1393,10 @@ static void parseFont(QSvgNode *node,
case FontSizeNone:
break;
case FontSizeValue: {
- QSvgHandler::LengthType dummy; // should always be pixel size
-- fontStyle->setSize(parseLength(attributes.fontSize, dummy, handler));
+- fontStyle->setSize(qMin(parseLength(attributes.fontSize, dummy, handler),
+- qreal(0xffff)));
+ QSvgHandler::LengthType type;
+ qreal fs = parseLength(attributes.fontSize, type, handler);
+ fs = convertToPixels(fs, true, type);
@@ -56,35 +29,25 @@ index 9dac05c..f2653af 100644
}
break;
default:
-@@ -1615,6 +1627,7 @@ static void pathArc(QPainterPath &path,
-
+@@ -1626,6 +1627,7 @@ static void pathArc(QPainterPath &path,
+
static bool parsePathDataFast(const QStringRef &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;
-@@ -1622,28 +1635,31 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1633,7 +1635,8 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
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;
- ++str;
- QChar endc = *end;
- *const_cast(end) = 0; // parseNumbersArray requires 0-termination that QStringRef cannot guarantee
-+ const char *pattern = nullptr;
-+ if (pathElem == QLatin1Char('a') || pathElem == QLatin1Char('A'))
-+ pattern = "rrrffrr";
- QVarLengthArray arg;
-- parseNumbersArray(str, arg);
-+ parseNumbersArray(str, arg, pattern);
- *const_cast(end) = endc;
- if (pathElem == QLatin1Char('z') || pathElem == QLatin1Char('Z'))
+@@ -1650,14 +1653,13 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
arg.append(0);//dummy
const qreal *num = arg.constData();
int count = arg.count();
@@ -101,7 +64,7 @@ index 9dac05c..f2653af 100644
break;
}
x = x0 = num[0] + offsetX;
-@@ -1660,8 +1676,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1674,8 +1676,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
break;
case 'M': {
if (count < 2) {
@@ -111,7 +74,7 @@ index 9dac05c..f2653af 100644
break;
}
x = x0 = num[0];
-@@ -1687,8 +1702,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1701,8 +1702,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
break;
case 'l': {
if (count < 2) {
@@ -121,7 +84,7 @@ index 9dac05c..f2653af 100644
break;
}
x = num[0] + offsetX;
-@@ -1701,8 +1715,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1715,8 +1715,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
break;
case 'L': {
if (count < 2) {
@@ -131,7 +94,7 @@ index 9dac05c..f2653af 100644
break;
}
x = num[0];
-@@ -1742,8 +1755,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1756,8 +1755,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
break;
case 'c': {
if (count < 6) {
@@ -141,7 +104,7 @@ index 9dac05c..f2653af 100644
break;
}
QPointF c1(num[0] + offsetX, num[1] + offsetY);
-@@ -1759,8 +1771,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1773,8 +1771,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
}
case 'C': {
if (count < 6) {
@@ -151,7 +114,7 @@ index 9dac05c..f2653af 100644
break;
}
QPointF c1(num[0], num[1]);
-@@ -1776,8 +1787,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1790,8 +1787,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
}
case 's': {
if (count < 4) {
@@ -161,7 +124,7 @@ index 9dac05c..f2653af 100644
break;
}
QPointF c1;
-@@ -1798,8 +1808,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1812,8 +1808,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
}
case 'S': {
if (count < 4) {
@@ -171,7 +134,7 @@ index 9dac05c..f2653af 100644
break;
}
QPointF c1;
-@@ -1820,8 +1829,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1834,8 +1829,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
}
case 'q': {
if (count < 4) {
@@ -181,7 +144,7 @@ index 9dac05c..f2653af 100644
break;
}
QPointF c(num[0] + offsetX, num[1] + offsetY);
-@@ -1836,8 +1844,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1850,8 +1844,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
}
case 'Q': {
if (count < 4) {
@@ -191,7 +154,7 @@ index 9dac05c..f2653af 100644
break;
}
QPointF c(num[0], num[1]);
-@@ -1852,8 +1859,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1866,8 +1859,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
}
case 't': {
if (count < 2) {
@@ -201,7 +164,7 @@ index 9dac05c..f2653af 100644
break;
}
QPointF e(num[0] + offsetX, num[1] + offsetY);
-@@ -1873,8 +1879,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1887,8 +1879,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
}
case 'T': {
if (count < 2) {
@@ -211,7 +174,7 @@ index 9dac05c..f2653af 100644
break;
}
QPointF e(num[0], num[1]);
-@@ -1894,8 +1899,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1908,8 +1899,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
}
case 'a': {
if (count < 7) {
@@ -221,7 +184,7 @@ index 9dac05c..f2653af 100644
break;
}
qreal rx = (*num++);
-@@ -1917,8 +1921,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1931,8 +1921,7 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
break;
case 'A': {
if (count < 7) {
@@ -231,7 +194,7 @@ index 9dac05c..f2653af 100644
break;
}
qreal rx = (*num++);
-@@ -1939,12 +1942,15 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
+@@ -1953,12 +1942,15 @@ static bool parsePathDataFast(const QStringRef &dataStr, QPainterPath &path)
}
break;
default:
@@ -247,121 +210,39 @@ index 9dac05c..f2653af 100644
- return true;
+ return ok;
}
-
+
static bool parseStyle(QSvgNode *node,
-@@ -2358,6 +2364,27 @@ static bool parseAnimateNode(QSvgNode *parent,
- return true;
- }
-
-+static int parseClockValue(QString str, bool *ok)
-+{
-+ int res = 0;
-+ int ms = 1000;
-+ str = str.trimmed();
-+ if (str.endsWith(QLatin1String("ms"))) {
-+ str.chop(2);
-+ ms = 1;
-+ } else if (str.endsWith(QLatin1String("s"))) {
-+ str.chop(1);
-+ }
-+ double val = ms * toDouble(str, ok);
-+ if (ok) {
-+ if (val > std::numeric_limits::min() && val < std::numeric_limits::max())
-+ res = static_cast(val);
-+ else
-+ *ok = false;
-+ }
-+ return res;
-+}
-+
- static bool parseAnimateColorNode(QSvgNode *parent,
- const QXmlStreamAttributes &attributes,
- QSvgHandler *handler)
-@@ -2391,23 +2418,13 @@ static bool parseAnimateColorNode(QSvgNode *parent,
+@@ -2522,6 +2514,8 @@ static bool parseAnimateTransformNode(QSvgNode *parent,
+ ++s;
}
}
-
-- int ms = 1000;
-- beginStr = beginStr.trimmed();
-- if (beginStr.endsWith(QLatin1String("ms"))) {
-- beginStr.chop(2);
-- ms = 1;
-- } else if (beginStr.endsWith(QLatin1String("s"))) {
-- beginStr.chop(1);
-- }
-- durStr = durStr.trimmed();
-- if (durStr.endsWith(QLatin1String("ms"))) {
-- durStr.chop(2);
-- ms = 1;
-- } else if (durStr.endsWith(QLatin1String("s"))) {
-- durStr.chop(1);
-- }
-- int begin = static_cast(toDouble(beginStr) * ms);
-- int end = static_cast((toDouble(durStr) + begin) * ms);
-+ bool ok = true;
-+ int begin = parseClockValue(beginStr, &ok);
-+ if (!ok)
++ if (vals.count() % 3 != 0)
+ return false;
-+ int end = begin + parseClockValue(durStr, &ok);
-+ if (!ok || end <= begin)
-+ return false;
-
- QSvgAnimateColor *anim = new QSvgAnimateColor(begin, end, 0);
- anim->setArgs((targetStr == QLatin1String("fill")), colors);
-@@ -2497,24 +2514,13 @@ static bool parseAnimateTransformNode(QSvgNode *parent,
- }
- }
-
-- int ms = 1000;
-- beginStr = beginStr.trimmed();
-- if (beginStr.endsWith(QLatin1String("ms"))) {
-- beginStr.chop(2);
-- ms = 1;
-- } else if (beginStr.endsWith(QLatin1String("s"))) {
-- beginStr.chop(1);
-- }
-- int begin = static_cast(toDouble(beginStr) * ms);
-- durStr = durStr.trimmed();
-- if (durStr.endsWith(QLatin1String("ms"))) {
-- durStr.chop(2);
-- ms = 1;
-- } else if (durStr.endsWith(QLatin1String("s"))) {
-- durStr.chop(1);
-- ms = 1000;
-- }
-- int end = static_cast(toDouble(durStr)*ms) + begin;
-+ bool ok = true;
-+ int begin = parseClockValue(beginStr, &ok);
-+ if (!ok)
-+ return false;
-+ int end = begin + parseClockValue(durStr, &ok);
-+ if (!ok || end <= begin)
-+ return false;
-
- QSvgAnimateTransform::TransformType type = QSvgAnimateTransform::Empty;
- if (typeStr == QLatin1String("translate")) {
-@@ -2570,6 +2576,8 @@ static QSvgNode *createCircleNode(QSvgNode *parent,
+
+ bool ok = true;
+ int begin = parseClockValue(beginStr, &ok);
+@@ -2585,6 +2579,8 @@ static QSvgNode *createCircleNode(QSvgNode *parent,
qreal ncx = toDouble(cx);
qreal ncy = toDouble(cy);
qreal nr = toDouble(r);
+ if (nr < 0.0)
+ return nullptr;
-
+
QRectF rect(ncx-nr, ncy-nr, nr*2, nr*2);
QSvgNode *circle = new QSvgCircle(parent, rect);
-@@ -2980,8 +2988,8 @@ static QSvgNode *createPathNode(QSvgNode *parent,
-
+@@ -2995,8 +2991,8 @@ static QSvgNode *createPathNode(QSvgNode *parent,
+
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;
-@@ -3040,15 +3048,16 @@ static QSvgStyleProperty *createRadialGradientNode(QSvgNode *node,
-
+@@ -3055,15 +3051,16 @@ static QSvgStyleProperty *createRadialGradientNode(QSvgNode *node,
+
qreal ncx = 0.5;
qreal ncy = 0.5;
- qreal nr = 0.5;
@@ -377,20 +258,20 @@ index 9dac05c..f2653af 100644
- nr = 0.5;
+ if (nr <= 0.0)
+ return nullptr;
-
+
qreal nfx = ncx;
if (!fx.isEmpty())
-@@ -3344,7 +3353,9 @@ static QSvgNode *createTextNode(QSvgNode *parent,
+@@ -3359,7 +3356,9 @@ static QSvgNode *createTextNode(QSvgNode *parent,
//### editable and rotate not handled
QSvgHandler::LengthType type;
qreal nx = parseLength(x, type, handler);
+ nx = convertToPixels(nx, true, type);
qreal ny = parseLength(y, type, handler);
+ ny = convertToPixels(ny, true, type);
-
+
QSvgNode *text = new QSvgText(parent, QPointF(nx, ny));
return text;
-@@ -3685,9 +3696,7 @@ void QSvgHandler::parse()
+@@ -3700,9 +3699,7 @@ void QSvgHandler::parse()
case QXmlStreamReader::EndElement:
endElement(xml->name());
++remainingUnfinishedElements;
@@ -407,7 +288,7 @@ index b89608b..89c9e4e 100644
+++ b/src/svg/qsvgstructure.cpp
@@ -255,9 +255,13 @@ inline static bool isSupportedSvgFeature(const QString &str)
};
-
+
if (str.length() <= MAX_WORD_LENGTH && str.length() >= MIN_WORD_LENGTH) {
+ const char16_t unicode44 = str.at(44).unicode();
+ const char16_t unicode45 = str.at(45).unicode();
@@ -428,7 +309,7 @@ index 63d0797..19e7154 100644
@@ -433,8 +433,16 @@ void QSvgTinyDocument::draw(QPainter *p, QSvgExtraStates &)
draw(p);
}
-
+
+static bool isValidMatrix(const QTransform &transform)
+{
+ qreal determinant = transform.determinant();
@@ -450,37 +331,41 @@ index 63d0797..19e7154 100644
+ if (!isValidMatrix(p->worldTransform()))
+ p->setWorldTransform(oldTransform);
}
-
+
QRectF QSvgTinyDocument::boundsOnElement(const QString &id) const
diff --git a/tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp b/tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp
-index 8f1f03b..36c76ec 100644
+index 36c76ec..db71e02 100644
--- a/tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp
+++ b/tests/auto/qsvgrenderer/tst_qsvgrenderer.cpp
-@@ -74,6 +74,7 @@ private slots:
- void fillRule();
- void opacity();
- void paths();
-+ void paths2();
- void displayMode();
- void strokeInherit();
- void testFillInheritance();
-@@ -1047,6 +1048,19 @@ void tst_QSvgRenderer::paths()
- }
+@@ -86,6 +86,8 @@ private slots:
+ void oss_fuzz_23731();
+ void oss_fuzz_24131();
+ void oss_fuzz_24738();
++ void illegalAnimateTransform_data();
++ void illegalAnimateTransform();
+
+ #ifndef QT_NO_COMPRESS
+ void testGzLoading();
+@@ -1646,5 +1648,22 @@ void tst_QSvgRenderer::oss_fuzz_24738()
+ QSvgRenderer().load(QByteArray("
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-08-24
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-webchannel/pspec.xml b/desktop/toolkit/qt5/qt5-webchannel/pspec.xml
index 8254126d0f..3fd8812b4e 100755
--- a/desktop/toolkit/qt5/qt5-webchannel/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-webchannel/pspec.xml
@@ -11,12 +11,12 @@
Provides access to QObject or QML objects from HTML clients for seamless integration of Qt applications with HTML/JavaScript clients
Provides access to QObject or QML objects from HTML clients for seamless integration of Qt applications with HTML/JavaScript clients
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtwebchannel-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtwebchannel-everywhere-opensource-src-5.15.7.tar.xz
- qt5-sql-sqlite
- qt5-base-devel
- qt5-assistant-devel
- qt5-declarative-devel
+ qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-declarative-devel
@@ -29,8 +29,8 @@
libgcc
- qt5-base
- qt5-declarative
+ qt5-base
+ qt5-declarative
@@ -42,8 +42,8 @@
qt5-webchannel
- qt5-base-devel
- qt5-declarative-devel
+ qt5-base-devel
+ qt5-declarative-devel
@@ -54,12 +54,19 @@
libgcc
- qt5-base
- qt5-declarative
+ qt5-base
+ qt5-declarative
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-websockets/pspec.xml b/desktop/toolkit/qt5/qt5-websockets/pspec.xml
index 1c7d16e7d5..093b2344ec 100755
--- a/desktop/toolkit/qt5/qt5-websockets/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-websockets/pspec.xml
@@ -11,12 +11,12 @@
Provides WebSocket communication compliant with RFC 6455
Provides WebSocket communication compliant with RFC 6455
LGPLv2.1-linking-exception
- http://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtwebsockets-everywhere-opensource-src-5.15.5.tar.xz
+ http://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtwebsockets-everywhere-opensource-src-5.15.7.tar.xz
- qt5-sql-sqlite
- qt5-base-devel
- qt5-assistant-devel
- qt5-declarative-devel
+ qt5-sql-sqlite
+ qt5-base-devel
+ qt5-assistant-devel
+ qt5-declarative-devel
@@ -28,8 +28,8 @@
libgcc
- qt5-base
- qt5-declarative
+ qt5-base
+ qt5-declarative
@@ -41,7 +41,7 @@
qt5-websockets
- qt5-base-devel
+ qt5-base-devel
@@ -51,11 +51,18 @@
/usr/share/doc/qt5
- qt5-base
+ qt5-base
+
+ 2022-12-21
+ 5.15.7
+ Version bump.
+ Mustafa Cinasal
+ muscnsl@gmail.com
+
2022-07-05
5.15.5
diff --git a/desktop/toolkit/qt5/qt5-webview/pspec.xml b/desktop/toolkit/qt5/qt5-webview/pspec.xml
index 8ad0d2aee7..5b819a4fbe 100644
--- a/desktop/toolkit/qt5/qt5-webview/pspec.xml
+++ b/desktop/toolkit/qt5/qt5-webview/pspec.xml
@@ -12,11 +12,11 @@
library
Provides a way to display web content in a QML application
Bir QML uygulamasında web içeriğini görüntülemenin bir yolunu sağlar
- https://download.qt.io/official_releases/qt/5.15/5.15.5/submodules/qtwebview-everywhere-opensource-src-5.15.5.tar.xz
+ https://download.qt.io/official_releases/qt/5.15/5.15.7/submodules/qtwebview-everywhere-opensource-src-5.15.7.tar.xz
- qt5-base-devel
- qt5-webengine-devel
- qt5-declarative-devel
+ qt5-base-devel
+ qt5-webengine-devel
+ qt5-declarative-devel
+
+ 2022-12-21
+ 1.5
+ Rebuild.
+ Kamil Atlı
+ suvari@pisilinux.org
+
2022-07-05
1.5