summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRobert Loehning <robert.loehning@qt.io>2020-08-03 21:47:36 +0200
committerRobert Loehning <robert.loehning@qt.io>2020-08-04 13:10:20 +0200
commit3206ab23a01ff19850ebdce6ac0338ddb29b5b95 (patch)
tree0e9f0c80d21068357a9738eec10e3418aac12370 /src
parente03ad18db9a40590fa88cd2b10fa1b681f7ee2da (diff)
downloadqtsvg-3206ab23a01ff19850ebdce6ac0338ddb29b5b95.tar.gz
Don't divide by zero
Fixes: oss-fuzz-24308 Pick-to: 5.15 5.12 Change-Id: I628f073cc2ec99b18333d2831c53cd888ebc5780 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src')
-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 bd9fdbc..29f3564 100644
--- a/src/svg/qsvghandler.cpp
+++ b/src/svg/qsvghandler.cpp
@@ -1542,6 +1542,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);