| commit e0641b1828d0a1af5ecb1b11fe22f24fceefd4bc |
| Author: Marti Maria <marti.maria@littlecms.com> |
| Date: Thu Mar 12 22:57:35 2026 +0100 |
| |
| check for overflow |
| |
| Thanks to Guanni Qu for detecting & reporting the issue |
| |
| diff --git a/src/cmslut.c b/src/cmslut.c |
| index a60baf9..65c935f 100644 |
| --- a/src/cmslut.c |
| +++ b/src/cmslut.c |
| @@ -468,12 +468,12 @@ cmsUInt32Number CubeSize(const cmsUInt32Number Dims[], cmsUInt32Number b) |
| for (rv = 1; b > 0; b--) { |
| |
| dim = Dims[b-1]; |
| - if (dim <= 1) return 0; // Error |
| - |
| - rv *= dim; |
| + if (dim <= 1) return 0; |
| |
| // Check for overflow |
| if (rv > UINT_MAX / dim) return 0; |
| + |
| + rv *= dim; |
| } |
| |
| // Again, prevent overflow |