Commit dd198f960 for imagemagick.org

commit dd198f960a586126dad3bb1699b1067c260f53fb
Author: Dirk Lemstra <dirk@lemstra.org>
Date:   Mon May 18 17:37:29 2026 +0200

    Make sure we free the chunk when hitting max loop.

diff --git a/coders/png.c b/coders/png.c
index 9d0c94278..9662a4793 100644
--- a/coders/png.c
+++ b/coders/png.c
@@ -5840,7 +5840,10 @@ static Image *ReadOneMNGImage(MngReadInfo* mng_info,
           {
             ssize_t loop_iters=1;
             if (number_loop_ops++ > MNG_MAX_LOOP_OPS)
-              ThrowReaderException(ResourceLimitError,"too many LOOP/ENDL ops");
+              {
+                chunk=(unsigned char *) RelinquishMagickMemory(chunk);
+                ThrowReaderException(ResourceLimitError,"too many LOOP/ENDL ops");
+              }
             if (length > 4)
               {
                 loop_level=chunk[0];
@@ -5877,7 +5880,10 @@ static Image *ReadOneMNGImage(MngReadInfo* mng_info,
         if (memcmp(type,mng_ENDL,4) == 0)
           {
             if (number_loop_ops++ > MNG_MAX_LOOP_OPS)
-              ThrowReaderException(ResourceLimitError,"too many LOOP/ENDL ops");
+              {
+                chunk=(unsigned char *) RelinquishMagickMemory(chunk);
+                ThrowReaderException(ResourceLimitError,"too many LOOP/ENDL ops");
+              }
             if (length > 0)
               {
                 loop_level=chunk[0];