From dc3ed5b6a7d9cc7d251a1942558e37793d5575b8 Mon Sep 17 00:00:00 2001 From: Yann Collet Date: Wed, 8 Nov 2017 17:56:20 -0800 Subject: [PATCH] added code comments --- lib/lz4opt.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/lz4opt.h b/lib/lz4opt.h index 7f74df9..9917851 100644 --- a/lib/lz4opt.h +++ b/lib/lz4opt.h @@ -184,8 +184,13 @@ static int LZ4HC_compress_optimal ( DEBUGLOG(7, "rPos:%u[%u] vs [%u]%u", cur, opt[cur].price, opt[cur+1].price, cur+1); if (fullUpdate) { - if ((opt[cur+1].price <= opt[cur].price) && (opt[cur+MINMATCH].price < opt[cur].price + 3/*min seq price*/)) continue; + /* not useful to search here if next position has same (or lower) cost */ + if ( (opt[cur+1].price <= opt[cur].price) + /* in some cases, next position has same cost, but cost rises sharply after, so a small match would still be beneficial */ + && (opt[cur+MINMATCH].price < opt[cur].price + 3/*min seq price*/) ) + continue; } else { + /* not useful to search here if next position has same (or lower) cost */ if (opt[cur+1].price <= opt[cur].price) continue; } -- 2.7.4