diff options
Diffstat (limited to 'recipes-qt/qt5/qtsvg/CVE-2023-32573-qtsvg-5.15.diff')
-rw-r--r-- | recipes-qt/qt5/qtsvg/CVE-2023-32573-qtsvg-5.15.diff | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/recipes-qt/qt5/qtsvg/CVE-2023-32573-qtsvg-5.15.diff b/recipes-qt/qt5/qtsvg/CVE-2023-32573-qtsvg-5.15.diff new file mode 100644 index 00000000..c09e6437 --- /dev/null +++ b/recipes-qt/qt5/qtsvg/CVE-2023-32573-qtsvg-5.15.diff @@ -0,0 +1,48 @@ +From 9894206da35bde7025703f1e823f2df447ca200d Mon Sep 17 00:00:00 2001 +From: Marek Vasut <marex@denx.de> +Date: Tue, 10 Oct 2023 15:59:40 +0200 +Subject: [PATCH] qtsvg: Pick CVE-2023-32573 fix + +CVE: CVE-2023-32573 +Upstream-Status: Backport [https://download.qt.io/official_releases/qt/5.15/CVE-2023-32573-qtsvg-5.15.diff] +--- + src/svg/qsvgfont_p.h | 5 ++--- + src/svg/qsvghandler.cpp | 2 +- + 2 files changed, 3 insertions(+), 4 deletions(-) + +diff --git a/src/svg/qsvgfont_p.h b/src/svg/qsvgfont_p.h +index fd0a3fa..fcffbe8 100644 +--- a/src/svg/qsvgfont_p.h ++++ b/src/svg/qsvgfont_p.h +@@ -74,6 +74,7 @@ public: + class Q_SVG_PRIVATE_EXPORT QSvgFont : public QSvgRefCounted + { + public: ++ static constexpr qreal DEFAULT_UNITS_PER_EM = 1000; + QSvgFont(qreal horizAdvX); + + void setFamilyName(const QString &name); +@@ -86,9 +87,7 @@ public: + void draw(QPainter *p, const QPointF &point, const QString &str, qreal pixelSize, Qt::Alignment alignment) const; + public: + QString m_familyName; +- qreal m_unitsPerEm; +- qreal m_ascent; +- qreal m_descent; ++ qreal m_unitsPerEm = DEFAULT_UNITS_PER_EM; + qreal m_horizAdvX; + QHash<QChar, QSvgGlyph> m_glyphs; + }; +diff --git a/src/svg/qsvghandler.cpp b/src/svg/qsvghandler.cpp +index b2227b6..f4a00e3 100644 +--- a/src/svg/qsvghandler.cpp ++++ b/src/svg/qsvghandler.cpp +@@ -2666,7 +2666,7 @@ static bool parseFontFaceNode(QSvgStyleProperty *parent, + + qreal unitsPerEm = toDouble(unitsPerEmStr); + if (!unitsPerEm) +- unitsPerEm = 1000; ++ unitsPerEm = QSvgFont::DEFAULT_UNITS_PER_EM; + + if (!name.isEmpty()) + font->setFamilyName(name); |