Commit 9bb57cc2d for imagemagick.org
commit 9bb57cc2dc8f5f8dc75a41fe576b8a1659ec1ee0
Author: Cristy <urban-warrior@imagemagick.org>
Date: Thu Mar 12 19:30:31 2026 -0400
https://github.com/ImageMagick/ImageMagick/security/advisories/GHSA-354p-2qx7-jg9g
diff --git a/MagickCore/morphology.c b/MagickCore/morphology.c
index 29cfca7ac..77fc3cdf8 100644
--- a/MagickCore/morphology.c
+++ b/MagickCore/morphology.c
@@ -1633,7 +1633,7 @@ MagickExport KernelInfo *AcquireKernelBuiltIn(const KernelInfoType type,
case DiskKernel:
{
ssize_t
- limit = (ssize_t)(args->rho*args->rho);
+ limit = CastDoubleToSsizeT(args->rho*args->rho);
if (args->rho < 0.4) /* default radius approx 4.3 */
kernel->width = kernel->height = 9L, limit = 18L;
@@ -1714,14 +1714,14 @@ MagickExport KernelInfo *AcquireKernelBuiltIn(const KernelInfoType type,
if (args->rho < args->sigma)
{
kernel->width = CastDoubleToSizeT(args->sigma*2.0+1.0);
- limit1 = (ssize_t)(args->rho*args->rho);
- limit2 = (ssize_t)(args->sigma*args->sigma);
+ limit1 = CastDoubleToSsizeT(args->rho*args->rho);
+ limit2 = CastDoubleToSsizeT(args->sigma*args->sigma);
}
else
{
kernel->width = CastDoubleToSizeT(args->rho*2.0+1.0);
- limit1 = (ssize_t)(args->sigma*args->sigma);
- limit2 = (ssize_t)(args->rho*args->rho);
+ limit1 = CastDoubleToSsizeT(args->sigma*args->sigma);
+ limit2 = CastDoubleToSsizeT(args->rho*args->rho);
}
if ( limit2 <= 0 )
kernel->width = 7L, limit1 = 7L, limit2 = 11L;