Commit 2352dcbaa for imagemagick.org

commit 2352dcbaadab79c83f263d61e2058058c40d850d
Author: Cristy <urban-warrior@imagemagick.org>
Date:   Tue Mar 10 11:15:25 2026 -0400

    https://github.com/ImageMagick/ImageMagick/security/advisories/GHSA-rwgm-46rq-f86h

diff --git a/coders/viff.c b/coders/viff.c
index afd1a113c..595941f11 100644
--- a/coders/viff.c
+++ b/coders/viff.c
@@ -466,20 +466,20 @@ static Image *ReadVIFFImage(const ImageInfo *image_info,
           if (i < (ssize_t) image->colors)
             {
               image->colormap[i].red=(MagickRealType)
-                ScaleCharToQuantum((unsigned char) value);
+                ScaleCharToQuantum(CastDoubleToUChar(value));
               image->colormap[i].green=(MagickRealType)
-                ScaleCharToQuantum((unsigned char) value);
+                ScaleCharToQuantum(CastDoubleToUChar(value));
               image->colormap[i].blue=(MagickRealType)
-                ScaleCharToQuantum((unsigned char) value);
+                ScaleCharToQuantum(CastDoubleToUChar(value));
             }
           else
             if (i < (ssize_t) (2*image->colors))
               image->colormap[i % (ssize_t) image->colors].green=
-                (MagickRealType) ScaleCharToQuantum((unsigned char) value);
+                (MagickRealType) ScaleCharToQuantum(CastDoubleToUChar(value));
             else
               if (i < (ssize_t) (3*image->colors))
                 image->colormap[i % (ssize_t) image->colors].blue=
-                  (MagickRealType) ScaleCharToQuantum((unsigned char) value);
+                  (MagickRealType) ScaleCharToQuantum(CastDoubleToUChar(value));
         }
         viff_colormap=(unsigned char *) RelinquishMagickMemory(viff_colormap);
         break;