Blame SOURCES/qtsvg-5.15.2-clamp-parsed-doubles-to-float-representtable-values.patch

5fe338
diff --git a/src/svg/qsvghandler.cpp b/src/svg/qsvghandler.cpp
2e2b4f
index b3d9aaf..9dac05c 100644
5fe338
--- a/src/svg/qsvghandler.cpp
5fe338
+++ b/src/svg/qsvghandler.cpp
2e2b4f
@@ -673,7 +673,8 @@ static qreal toDouble(const QChar *&str)
5fe338
             val = -val;
5fe338
     } else {
5fe338
         val = QByteArray::fromRawData(temp, pos).toDouble();
2e2b4f
-        if (qFpClassify(val) != FP_NORMAL)
5fe338
+        // Do not tolerate values too wild to be represented normally by floats
2e2b4f
+        if (qFpClassify(float(val)) != FP_NORMAL)
2e2b4f
             val = 0;
5fe338
     }
5fe338
     return val;
2e2b4f
@@ -3046,6 +3047,8 @@ static QSvgStyleProperty *createRadialGradientNode(QSvgNode *node,
5fe338
         ncy = toDouble(cy);
5fe338
     if (!r.isEmpty())
5fe338
         nr = toDouble(r);
5fe338
+    if (nr < 0.5)
5fe338
+        nr = 0.5;
5fe338
 
5fe338
     qreal nfx = ncx;
5fe338
     if (!fx.isEmpty())