Commit 54254cf74 for imagemagick.org

commit 54254cf74d659f38f7a45c73cb52a9a36e8ed943
Author: Cristy <urban-warrior@imagemagick.org>
Date:   Wed Mar 25 20:27:04 2026 -0400

    https://github.com/ImageMagick/ImageMagick/security/advisories/GHSA-98cp-rj9f-6v5g

diff --git a/coders/png.c b/coders/png.c
index 52356fae0..4f415602f 100644
--- a/coders/png.c
+++ b/coders/png.c
@@ -12924,9 +12924,6 @@ static MagickBooleanType WriteMNGImage(const ImageInfo *image_info,Image *image,
   mng_info->image=image;
   write_mng=LocaleCompare(image_info->magick,"MNG") == 0 ?
     MagickTrue : MagickFalse;
-  if ((write_mng != MagickFalse) && (image->storage_class == PseudoClass) &&
-      (image->colors > 256))
-    (void) SetImageStorageClass(image,DirectClass,exception);
   /*
    * See if user has requested a specific PNG subformat to be used
    * for all of the PNGs in the MNG being written, e.g.,
@@ -13466,7 +13463,7 @@ static MagickBooleanType WriteMNGImage(const ImageInfo *image_info,Image *image,

      if ((need_local_plte == MagickFalse) &&
          (image->storage_class == PseudoClass) &&
-         (all_images_are_gray == MagickFalse))
+         (all_images_are_gray == MagickFalse) && (image->colors <= 256))
        {
          size_t
            data_length;
@@ -13519,7 +13516,8 @@ static MagickBooleanType WriteMNGImage(const ImageInfo *image_info,Image *image,
             */
             mng_info->have_global_plte=mng_info->equal_palettes;
             mng_info->equal_palettes=PalettesAreEqual(image,image->next);
-            if (mng_info->equal_palettes && !mng_info->have_global_plte)
+            if ((mng_info->equal_palettes && !mng_info->have_global_plte) &&
+                (image->colors <= 256))
               {
                 /*
                   Write MNG PLTE chunk