blob: f9b321fc57e7dacab9663e6b60bb1ea782150dbb [file] [log] [blame]
From upstream: https://busybox.net/downloads/fixes-1.25.0/
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
--- busybox-1.25.0/archival/gzip.c
+++ busybox-1.25.0-gzip/archival/gzip.c
@@ -2220,10 +2220,7 @@ int gzip_main(int argc UNUSED_PARAM, cha
opt >>= ENABLE_GUNZIP ? 7 : 5; /* drop cfv[dt]qn bits */
if (opt == 0)
opt = 1 << 6; /* default: 6 */
- /* Map 1..3 to 4 */
- if (opt & 0x7)
- opt |= 1 << 4;
- opt = ffs(opt >> 3);
+ opt = ffs(opt >> 4); /* Maps -1..-4 to [0], -5 to [1] ... -9 to [5] */
max_chain_length = 1 << gzip_level_config[opt].chain_shift;
good_match = gzip_level_config[opt].good;
max_lazy_match = gzip_level_config[opt].lazy2 * 2;