File CVE-2023-32573.patch of Package libqt4.40303
From 30f636caa67ff0623c5c9346a433365dfdbb583a Mon Sep 17 00:00:00 2001
From: Than Ngo <than@redhat.com>
Date: May 18 2023 15:15:05 +0000
Subject: fix #2208136, CVE-2023-32573 Uninitialized variable usage in m_unitsPerEm
---
--- a/src/svg/qsvgfont_p.h
+++ b/src/svg/qsvgfont_p.h
@@ -78,6 +78,7 @@ public:
class QSvgFont : public QSvgRefCounted
{
public:
+ static const qreal DEFAULT_UNITS_PER_EM = 1000;
QSvgFont(qreal horizAdvX);
void setFamilyName(const QString &name);
@@ -90,9 +91,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;
};
--- a/src/svg/qsvghandler.cpp
+++ b/src/svg/qsvghandler.cpp
@@ -2571,7 +2571,7 @@ static bool parseFontFaceNode(QSvgStyleP
qreal unitsPerEm = toDouble(unitsPerEmStr);
if (!unitsPerEm)
- unitsPerEm = 1000;
+ unitsPerEm = QSvgFont::DEFAULT_UNITS_PER_EM;
if (!name.isEmpty())
font->setFamilyName(name);