# HG changeset patch # User michael # Date 1176157089 0 # Node ID 4a7e1f5cdc7acae58deecd33e0dc7d848173958f # Parent 5a523aee73790d23b83db44b8c2e5364f78a8f8f simplify diff -r 5a523aee7379 -r 4a7e1f5cdc7a lzwenc.c --- a/lzwenc.c Mon Apr 09 14:10:07 2007 +0000 +++ b/lzwenc.c Mon Apr 09 22:18:09 2007 +0000 @@ -232,13 +232,12 @@ for (i = 0; i < insize; i++) { uint8_t c = *inbuf++; int code = findCode(s, c, code_prefix); - if (s->tab[code].hash_prefix != LZW_PREFIX_FREE) { - code_prefix = s->tab[code].code; - } else { + if (s->tab[code].hash_prefix == LZW_PREFIX_FREE) { writeCode(s, code_prefix); addCode(s, c, code_prefix, code); - code_prefix = s->tab[hash(0, c)].code; + code= hash(0, c); } + code_prefix = s->tab[code].code; if (s->tabsize >= s->maxcode - 1) { clearTable(s); }