Commit e3af512e for libheif
commit e3af512eac7aad45cc13401057b89a39b064d82e
Author: Dirk Farin <dirk.farin@gmail.com>
Date: Thu Jan 1 01:37:08 2026 +0100
fix memory leak on zlib buffer error
diff --git a/libheif/compression_zlib.cc b/libheif/compression_zlib.cc
index c712cae3..7368e432 100644
--- a/libheif/compression_zlib.cc
+++ b/libheif/compression_zlib.cc
@@ -124,6 +124,7 @@ Result<std::vector<uint8_t>> do_inflate(const std::vector<uint8_t>& compressed_i
if (err == Z_BUF_ERROR) {
if (dst.size() >= 65536) { // TODO: make this a security limit
+ inflateEnd(&strm);
std::stringstream sstr;
sstr << "Error performing zlib inflate: maximum output buffer size exceeded\n";
return Error(heif_error_Memory_allocation_error, heif_suberror_Compression_initialisation_error, sstr.str());