diff options
author | Michael Drake <tlsa@netsurf-browser.org> | 2021-03-31 20:18:43 +0100 |
---|---|---|
committer | Michael Drake <tlsa@netsurf-browser.org> | 2021-04-06 09:03:19 +0100 |
commit | f1e0c5c5bbb01ab9747b9bd0113e6598bcc5025a (patch) | |
tree | 9d25baf6939441df31e8b25e727b8fc576a5005c | |
parent | 87f9e081593d4ca373997f4a19578f13066e1941 (diff) | |
download | libnsgif-f1e0c5c5bbb01ab9747b9bd0113e6598bcc5025a.tar.gz libnsgif-f1e0c5c5bbb01ab9747b9bd0113e6598bcc5025a.tar.bz2 |
lzw: Avoid code size increment check when dictionary is full.
-rw-r--r-- | src/lzw.c | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -357,11 +357,10 @@ lzw_result lzw_decode(struct lzw_ctx *ctx, lzw__dictionary_add_entry(ctx, (code_new < current_entry) ? table[code_new].first_value : ctx->previous_code_first); - } - /* Ensure code size is increased, if needed. */ - if (current_entry == ctx->current_code_size_max) { - if (ctx->current_code_size < LZW_CODE_MAX) { + /* Ensure code size is increased, if needed. */ + if (current_entry == ctx->current_code_size_max && + ctx->current_code_size < LZW_CODE_MAX) { ctx->current_code_size++; ctx->current_code_size_max = (1 << ctx->current_code_size) - 1; |