The first line of function alphaBlend(bytes memory backBgr, bytes memory foreAbgr, uint256 width, Rectangle memory rect) has a flaw, where the fgStride calculation will revert because Rectangle uses uint8, and xMin and xMax, when multiplied together, could be larger than a uint8.
For example, if xMax is 64, and xMin is 64, multiplication would overrun since the value will equal 256.
The first line of
function alphaBlend(bytes memory backBgr, bytes memory foreAbgr, uint256 width, Rectangle memory rect)
has a flaw, where thefgStride
calculation will revert becauseRectangle
usesuint8
, andxMin
andxMax
, when multiplied together, could be larger than auint8
.For example, if
xMax
is64
, andxMin
is64
, multiplication would overrun since the value will equal256
.This line:
Should be: