]> granicus.if.org Git - imagemagick/commitdiff
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=6978
authorCristy <urban-warrior@imagemagick.org>
Sat, 17 Mar 2018 10:46:14 +0000 (06:46 -0400)
committerCristy <urban-warrior@imagemagick.org>
Sat, 17 Mar 2018 10:46:34 +0000 (06:46 -0400)
MagickCore/draw.c

index a518c3654ed3e84a96ecd741deee5517b6dfa3b4..c47fc0f98628138ecbd2d87ea78fd018692d22d7 100644 (file)
@@ -1681,7 +1681,7 @@ static size_t EllipsePoints(const PrimitiveInfo *primitive_info,
   delta=2.0/MagickMax(stop.x,stop.y);
   step=MagickPI/8.0;
   if ((delta >= 0.0) && (delta < (MagickPI/8.0)))
-    step=MagickPI/(4*(MagickPI/delta/2+0.5));
+    step=MagickPI/(4*(MagickPI*PerceptibleReciprocal(delta)/2.0+0.5));
   if (step < 0.00001)
     step=0.00001;
   angle.x=DegreesToRadians(degrees.x);
@@ -5508,7 +5508,7 @@ static void TraceEllipse(PrimitiveInfo *primitive_info,const PointInfo start,
   delta=2.0/MagickMax(stop.x,stop.y);
   step=MagickPI/8.0;
   if ((delta >= 0.0) && (delta < (MagickPI/8.0)))
-    step=MagickPI/(4*(MagickPI/delta/2+0.5));
+    step=MagickPI/(4*(MagickPI*PerceptibleReciprocal(delta)/2.0+0.5));
   if (step < 0.00001)
     step=0.00001;
   angle.x=DegreesToRadians(degrees.x);