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
commit9d0217990141e793170c1b5cd5a139e6bffa14eb (patch)
tree4947fe557aa8652d5b3e9e627a4cbaa292c00504
parent2074f88aebd83147e7953ebb81c884926590e393 (diff)
downloadqtsvg-9d0217990141e793170c1b5cd5a139e6bffa14eb.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 842af02..9db653f 100644
--- a/src/svg/qsvghandler.cpp
+++ b/src/svg/qsvghandler.cpp
@@ -1579,6 +1579,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);