diff --git a/Source/3rd Party/zlib/trees.c b/Source/3rd Party/zlib/trees.c index 56e9bb1c1..747ca2944 100644 --- a/Source/3rd Party/zlib/trees.c +++ b/Source/3rd Party/zlib/trees.c @@ -204,7 +204,7 @@ local void send_bits(s, value, length) * unused bits in value. */ if (s->bi_valid > (int)Buf_size - length) { - s->bi_buf |= (ush)value << s->bi_valid; + s->bi_buf |= (value << s->bi_valid) & 0xFFFF; put_short(s, s->bi_buf); s->bi_buf = (ush)value >> (Buf_size - s->bi_valid); s->bi_valid += length - Buf_size;