Commit e37c79d437e5ecacce93fb4cc84f9ae6cf6a1f60

Igor Nazarov 2023-11-23T15:59:12

Fix DecompressBlob() when compressed data is invalid Function uses `zlib_internal::GetGzipUncompressedSize()` to calculate the `uncompressedSize`. This size comes directly from `compressedData`. If source data is invalid or has different format, then calculated size may be any value, including 0. Zero `uncompressedSize` cases ASSERT() in `angle::MemoryBuffer::data()` and may case UB in `zlib_internal::GzipUncompressHelper()`. Bug: chromium:1485277 Change-Id: Iaa92d93a5a1b530b8686cfb544eb66075b0874e6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5729953 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Roman Lavrov <romanl@google.com>