Commit 271ec7413 for imagemagick.org

commit 271ec741384c6c135238ff64aa3307174cd14afe
Author: Dirk Lemstra <dirk@lemstra.org>
Date:   Sun May 31 16:10:58 2026 +0200

    Added extra checks for the width and height.

diff --git a/coders/svg.c b/coders/svg.c
index 586ef8ed8..3bf9f4477 100644
--- a/coders/svg.c
+++ b/coders/svg.c
@@ -463,6 +463,11 @@ static Image *RenderRSVGImage(const ImageInfo *image_info,Image *image,
 #if defined(MAGICKCORE_CAIRO_DELEGATE)
   apply_density=MagickTrue;
   rsvg_handle_get_dimensions(svg_handle,&dimension_info);
+  if ((dimension_info.width == 0) || (dimension_info.height == 0))
+    {
+      g_object_unref(svg_handle);
+      ThrowReaderException(CorruptImageError,"NegativeOrZeroImageSize");
+    }
   if ((image->resolution.x > 0.0) && (image->resolution.y > 0.0))
     {
       RsvgDimensionData
@@ -487,10 +492,10 @@ static Image *RenderRSVGImage(const ImageInfo *image_info,Image *image,
         &image->columns,&image->rows);
       if ((image->columns != 0) || (image->rows != 0))
         {
-          image->resolution.x=DefaultSVGDensity*image->columns/
-            dimension_info.width;
-          image->resolution.y=DefaultSVGDensity*image->rows/
-            dimension_info.height;
+          image->resolution.x=dimension_info.width > 0 ?
+            DefaultSVGDensity*image->columns/dimension_info.width : 0.0;
+          image->resolution.y=dimension_info.height > 0 ?
+            DefaultSVGDensity*image->rows/dimension_info.height : 0.0;
           if (fabs(image->resolution.x) < MagickEpsilon)
             image->resolution.x=image->resolution.y;
           else