From 3ce27a96d5eac0c727a567112239d99335dde072 Mon Sep 17 00:00:00 2001
From: Cary Phillips <cary@ilm.com>
Date: Sat, 21 Feb 2026 21:47:19 -0800
Subject: [PATCH] Report an error if a deep pixel as more than UINT_MAX samples
 (#2256)

---
 src/lib/OpenEXR/ImfCompositeDeepScanLine.cpp | 4 ++++
 1 file changed, 4 insertions(+)

Index: openexr-3.2.2/src/lib/OpenEXR/ImfCompositeDeepScanLine.cpp
===================================================================
--- openexr-3.2.2.orig/src/lib/OpenEXR/ImfCompositeDeepScanLine.cpp
+++ openexr-3.2.2/src/lib/OpenEXR/ImfCompositeDeepScanLine.cpp
@@ -519,6 +519,10 @@ CompositeDeepScanLine::readPixels (int s
         num_sources[ptr] = 0;
         for (size_t j = 0; j < parts; j++)
         {
+            if (total_sizes[ptr] > std::numeric_limits<unsigned int>::max() - counts[j][ptr])
+                throw IEX_NAMESPACE::ArgExc (
+                    "Cannot composite scanline: pixel cannot have more than UINT_MAX samples");
+                
             total_sizes[ptr] += counts[j][ptr];
             if (counts[j][ptr] > 0) num_sources[ptr]++;
         }
