From ee474ff2d11715485a87b123edbdd615ba218b88 Mon Sep 17 00:00:00 2001 From: Hans Wennborg Date: Fri, 15 Dec 2023 15:10:19 +0100 Subject: Fix pending buffer overflow assert with LIT_MEM allocation. Since each element in s->d_buf is 2 bytes, the sx index should be multiplied by 2 in the assert. Fixes #897 --- trees.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/trees.c b/trees.c index 5ca23e9..e816d32 100644 --- a/trees.c +++ b/trees.c @@ -938,7 +938,7 @@ local void compress_block(deflate_state *s, const ct_data *ltree, /* Check for no overlay of pending_buf on needed symbols */ #ifdef LIT_MEM - Assert(s->pending < (s->lit_bufsize << 1) + sx, "pendingBuf overflow"); + Assert(s->pending < 2 * (s->lit_bufsize + sx), "pendingBuf overflow"); #else Assert(s->pending < s->lit_bufsize + sx, "pendingBuf overflow"); #endif -- cgit v1.2.3-55-g6feb