summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Loehning <robert.loehning@qt.io>2020-08-03 21:47:36 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2020-08-04 11:25:13 +0000
commitc498f00ae2c24b08af7a7d8b4c2cf91aaa49b2a9 (patch)
treefb2e8ba1d691ecbdc2b6037296a54c720dc17328
parent40067b9bf7fff392b267905ffe41f85209b607e9 (diff)
downloadqtsvg-c498f00ae2c24b08af7a7d8b4c2cf91aaa49b2a9.tar.gz
Don't divide by zero
Fixes: oss-fuzz-24308 Change-Id: I628f073cc2ec99b18333d2831c53cd888ebc5780 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 3206ab23a01ff19850ebdce6ac0338ddb29b5b95) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/svg/qsvghandler.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/svg/qsvghandler.cpp b/src/svg/qsvghandler.cpp
index 8f5ff0c..1a0d0f2 100644
--- a/src/svg/qsvghandler.cpp
+++ b/src/svg/qsvghandler.cpp
@@ -1575,6 +1575,8 @@ static void pathArc(QPainterPath &path,
The arc fits a unit-radius circle in this space.
*/
d = (x1 - x0) * (x1 - x0) + (y1 - y0) * (y1 - y0);
+ if (!d)
+ return;
sfactor_sq = 1.0 / d - 0.25;
if (sfactor_sq < 0) sfactor_sq = 0;
sfactor = qSqrt(sfactor_sq);