Commit 56f029588 for imagemagick.org

commit 56f02958890b820cf2d0a6ecb04eb6f58ea75628
Author: Dirk Lemstra <dirk@lemstra.org>
Date:   Tue Feb 3 22:40:04 2026 +0100

    Patch to resolve possible out of bounds write in the msl decoder (GHSA-3mwp-xqp2-q6ph).

diff --git a/coders/msl.c b/coders/msl.c
index 078ecdaf9..1c6315e41 100644
--- a/coders/msl.c
+++ b/coders/msl.c
@@ -5826,10 +5826,11 @@ static void MSLStartElement(void *context,const xmlChar *tag,
                   Quantum  opac = OpaqueAlpha;
                   ssize_t len = (ssize_t) strlen( value );

-                  if (value[len-1] == '%') {
-                    char  tmp[100];
+                  if ((len > 0) && (value[len-1] == '%')) {
+                    char *tmp = AcquireString(value);
                     (void) CopyMagickString(tmp,value,(size_t) len);
                     opac = (Quantum) StringToLong( tmp );
+                    tmp=DestroyString(tmp);
                     opac = (Quantum)(QuantumRange * ((float)opac/100));
                   } else
                     opac = (Quantum) StringToLong( value );