Commit 433b03936 for imagemagick.org

commit 433b03936fb33506a541f1379899388c45118ce2
Author: Cristy <urban-warrior@imagemagick.org>
Date:   Tue Oct 27 18:41:15 2026 -0400

    https://github.com/ImageMagick/ImageMagick/security/advisories/GHSA-67p3-xhc7-g797

diff --git a/coders/bgr.c b/coders/bgr.c
index e087932ad..7fe70798f 100644
--- a/coders/bgr.c
+++ b/coders/bgr.c
@@ -959,6 +959,8 @@ static Image *ReadBGRImage(const ImageInfo *image_info,ExceptionInfo *exception)
     if (image_info->number_scenes != 0)
       if (image->scene >= (image_info->scene+image_info->number_scenes-1))
         break;
+    if (image_info->interlace == PartitionInterlace)
+      break;
     if (count == (ssize_t) length)
       {
         /*
diff --git a/coders/cmyk.c b/coders/cmyk.c
index e55da8b65..ab809781f 100644
--- a/coders/cmyk.c
+++ b/coders/cmyk.c
@@ -1071,6 +1071,8 @@ static Image *ReadCMYKImage(const ImageInfo *image_info,
     if (image_info->number_scenes != 0)
       if (image->scene >= (image_info->scene+image_info->number_scenes-1))
         break;
+    if (image_info->interlace == PartitionInterlace)
+      break;
     if (count == (ssize_t) length)
       {
         /*
diff --git a/coders/gray.c b/coders/gray.c
index c30a166c0..f83686a6e 100644
--- a/coders/gray.c
+++ b/coders/gray.c
@@ -681,6 +681,8 @@ static Image *ReadGRAYImage(const ImageInfo *image_info,
     if (image_info->number_scenes != 0)
       if (image->scene >= (image_info->scene+image_info->number_scenes-1))
         break;
+    if (image_info->interlace == PartitionInterlace)
+      break;
     if (count == (ssize_t) length)
       {
         /*
diff --git a/coders/rgb.c b/coders/rgb.c
index 300f11b75..79ce7ffc9 100644
--- a/coders/rgb.c
+++ b/coders/rgb.c
@@ -946,6 +946,8 @@ static Image *ReadRGBImage(const ImageInfo *image_info,ExceptionInfo *exception)
     if (image_info->number_scenes != 0)
       if (image->scene >= (image_info->scene+image_info->number_scenes-1))
         break;
+    if (image_info->interlace == PartitionInterlace)
+      break;
     if (count == (ssize_t) length)
       {
         /*
diff --git a/coders/ycbcr.c b/coders/ycbcr.c
index e16cd1d88..f149d6f22 100644
--- a/coders/ycbcr.c
+++ b/coders/ycbcr.c
@@ -938,6 +938,8 @@ static Image *ReadYCBCRImage(const ImageInfo *image_info,
     if (image_info->number_scenes != 0)
       if (image->scene >= (image_info->scene+image_info->number_scenes-1))
         break;
+    if (image_info->interlace == PartitionInterlace)
+      break;
     if (count == (ssize_t) length)
       {
         /*
diff --git a/coders/yuv.c b/coders/yuv.c
index 9601af91c..a0167b153 100644
--- a/coders/yuv.c
+++ b/coders/yuv.c
@@ -495,6 +495,8 @@ static Image *ReadYUVImage(const ImageInfo *image_info,ExceptionInfo *exception)
     if (image_info->number_scenes != 0)
       if (image->scene >= (image_info->scene+image_info->number_scenes-1))
         break;
+    if (image_info->interlace == PartitionInterlace)
+      break;
     if (interlace == NoInterlace)
       count=ReadBlob(image,(size_t) (2*quantum*image->columns),scanline);
     else