Commit 9616e884b for imagemagick.org

commit 9616e884b5b7a37318cd75cd1bbd24fea07830bd
Author: Cristy <urban-warrior@imagemagick.org>
Date:   Mon Jun 22 22:15:34 2026 -0400

    https://github.com/ImageMagick/ImageMagick/issues/8815

diff --git a/MagickCore/constitute-private.h b/MagickCore/constitute-private.h
index 566a98df1..e08573a21 100644
--- a/MagickCore/constitute-private.h
+++ b/MagickCore/constitute-private.h
@@ -57,20 +57,21 @@ static inline Image *StrictReadImage(const ImageInfo *image_info,
     {
       LocaleUpper(magic);
       if (IsAllowedCoder(magic) == MagickFalse)
-       {
-         (void) ThrowMagickException(exception,GetMagickModule(),
-           OptionError, "ExplicitCoderNotAllowed","`%s'",
-           image_info->filename);
+        {
+          (void) ThrowMagickException(exception,GetMagickModule(),
+            OptionError, "ExplicitCoderNotAllowed","`%s'",
+            image_info->filename);
+         return((Image *) NULL);
+       }
+    }
+  else
+    if (IsPathAccessible(image_info->filename) == MagickFalse)
+      {
+        (void) ThrowMagickException(exception,GetMagickModule(),
+          FileOpenError, "UnableToOpenFile","`%s'",
+          image_info->filename);
         return((Image *) NULL);
       }
-    }
-  if (IsPathAccessible(image_info->filename) == MagickFalse)
-    {
-      (void) ThrowMagickException(exception,GetMagickModule(),
-        FileOpenError, "UnableToOpenFile","`%s'",
-        image_info->filename);
-     return((Image *) NULL);
-   }
   return(ReadImage(image_info,exception));
 }

diff --git a/MagickCore/draw.c b/MagickCore/draw.c
index 9af278cb4..8294e38d0 100644
--- a/MagickCore/draw.c
+++ b/MagickCore/draw.c
@@ -58,6 +58,7 @@
 #include "MagickCore/composite.h"
 #include "MagickCore/composite-private.h"
 #include "MagickCore/constitute.h"
+#include "MagickCore/constitute-private.h"
 #include "MagickCore/draw.h"
 #include "MagickCore/draw-private.h"
 #include "MagickCore/enhance.h"
@@ -5729,8 +5730,7 @@ MagickExport MagickBooleanType DrawPrimitive(Image *image,
         affine;

       char
-        composite_geometry[MagickPathExtent],
-        magic[MagickPathExtent] = {'\0'};
+        composite_geometry[MagickPathExtent];

       Image
         *composite_image,
@@ -5768,12 +5768,7 @@ MagickExport MagickBooleanType DrawPrimitive(Image *image,
               clone_info->size=DestroyString(clone_info->size);
             if (clone_info->extract != (char *) NULL)
               clone_info->extract=DestroyString(clone_info->extract);
-            GetPathComponent(clone_info->filename,MagickPath,magic);
-            if (*magic == '\0')
-              composite_images=ReadImage(clone_info,exception);
-            else
-              (void) ThrowMagickException(exception,GetMagickModule(),
-                FileOpenError,"UnableToOpenFile","`%s'",clone_info->filename);
+            composite_images=StrictReadImage(clone_info,exception);
           }
       clone_info=DestroyImageInfo(clone_info);
       if (composite_images == (Image *) NULL)