File ImageMagick-CVE-2026-25969.patch of Package ImageMagick.42997

From a253d1b124ebdcc2832daac6f9a35c362635b40e Mon Sep 17 00:00:00 2001
From: Cristy <urban-warrior@imagemagick.org>
Date: Wed, 28 Jan 2026 20:33:56 -0500
Subject: [PATCH] 
 https://github.com/ImageMagick/ImageMagick/security/advisories/GHSA-xgm3-v4r9-wfgm

---
 coders/ashlar.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

Index: ImageMagick-7.1.2-0/coders/ashlar.c
===================================================================
--- ImageMagick-7.1.2-0.orig/coders/ashlar.c
+++ ImageMagick-7.1.2-0/coders/ashlar.c
@@ -543,7 +543,8 @@ static Image *ASHLARImage(ImageInfo *ima
       geometry.height=(size_t) geometry.height/7;
       geometry.x=(ssize_t) pow((double) geometry.width,0.25);
       geometry.y=(ssize_t) pow((double) geometry.height,0.25);
-      image_info->extract=AcquireString("");
+      if (image_info->extract == (char *) NULL)
+        image_info->extract=AcquireString("");
       if (image_info->extract != (char *) NULL)
         (void) FormatLocaleString(image_info->extract,MagickPathExtent,
           "%gx%g%+g%+g",(double) geometry.width,(double) geometry.height,
@@ -707,7 +708,6 @@ static MagickBooleanType WriteASHLARImag
   if (value != (const char *) NULL)
     tiles_per_page=(size_t) MagickMax(StringToInteger(value),1);
   ashlar_images=NewImageList();
-  write_info=CloneImageInfo(image_info);
   for (i=0; i < (ssize_t) GetImageListLength(image); i+=(ssize_t) tiles_per_page)
   {
     char
@@ -726,7 +726,9 @@ static MagickBooleanType WriteASHLARImag
           ashlar_images=DestroyImageList(ashlar_images);
         break;
       }
+    write_info=CloneImageInfo(image_info);
     ashlar_image=ASHLARImage(write_info,clone_images,exception);
+    write_info=DestroyImageInfo(write_info);
     clone_images=DestroyImageList(clone_images);
     if (ashlar_image == (Image *) NULL)
       {
@@ -741,6 +743,7 @@ static MagickBooleanType WriteASHLARImag
   ashlar_images=GetFirstImageInList(ashlar_images);
   (void) CopyMagickString(ashlar_images->filename,image_info->filename,
     MagickPathExtent);
+  write_info=CloneImageInfo(image_info);
   *write_info->magick='\0';
   (void) SetImageInfo(write_info,(unsigned int)
     GetImageListLength(ashlar_images),exception);
openSUSE Build Service is sponsored by