From: Yann Collet Date: Tue, 22 Oct 2024 23:03:19 +0000 (-0700) Subject: changed loop exit condition so that there is no need to assert() within the loop. X-Git-Tag: v1.5.7^2~71^2~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1ec5f9f1f6b187095d996248471a6c6f128e9001;p=thirdparty%2Fzstd.git changed loop exit condition so that there is no need to assert() within the loop. --- diff --git a/lib/compress/zstd_preSplit.c b/lib/compress/zstd_preSplit.c index e0ac9a9e9..02751a0d4 100644 --- a/lib/compress/zstd_preSplit.c +++ b/lib/compress/zstd_preSplit.c @@ -155,8 +155,7 @@ static size_t ZSTD_splitBlock_byChunks(const void* src, size_t srcSize, initStats(fpstats); recordFingerprint(&fpstats->pastEvents, p, CHUNKSIZE, f); - for (pos = CHUNKSIZE; pos < blockSizeMax; pos += CHUNKSIZE) { - assert(pos <= blockSizeMax - CHUNKSIZE); + for (pos = CHUNKSIZE; pos <= blockSizeMax - CHUNKSIZE; pos += CHUNKSIZE) { recordFingerprint(&fpstats->newEvents, p + pos, CHUNKSIZE, f); if (compareFingerprints(&fpstats->pastEvents, &fpstats->newEvents, penalty)) { return pos; @@ -165,6 +164,7 @@ static size_t ZSTD_splitBlock_byChunks(const void* src, size_t srcSize, penalty = penalty - 1 + (penalty == 0); } } + assert(pos == blockSizeMax); return blockSizeMax; (void)flushEvents; (void)removeEvents; }