libheif is a HEIF and AVIF file format decoder and encoder. In versions 1.21.2 and prior, the inline mask parsing code in libheif/region.cc contains an integer overflow. Both width and height are unsigned int (32-bit) values parsed from the HEIF file. Their product can exceed UINT32_MAX, wrapping to a small value before the division by 8. This causes an undersized buffer allocation, leading to out-of-bounds memory access when the mask data is later interpreted as a width x height bitmap. Version 1.22.0 patches the issue.