Mercurial > libavcodec.hg
changeset 4725:74caca70e2b3 libavcodec
simplify
author | michael |
---|---|
date | Sun, 25 Mar 2007 13:41:14 +0000 |
parents | ea97803884e1 |
children | ecb663d00b6b |
files | lzw.c |
diffstat | 1 files changed, 4 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/lzw.c Sun Mar 25 06:00:06 2007 +0000 +++ b/lzw.c Sun Mar 25 13:41:14 2007 +0000 @@ -55,7 +55,7 @@ int end_code; int newcodes; ///< First available code int top_slot; ///< Highest code for current size - int top_slot2; ///< Highest possible code for current size (<=top_slot) + int extra_slot; int slot; ///< Last read code int fc, oc; uint8_t *sp; @@ -158,10 +158,10 @@ s->mode = mode; switch(s->mode){ case FF_LZW_GIF: - s->top_slot2 = s->top_slot; + s->extra_slot= 0; break; case FF_LZW_TIFF: - s->top_slot2 = s->top_slot - 1; + s->extra_slot= 1; break; default: return -1; @@ -208,9 +208,6 @@ s->curmask = mask[s->cursize]; s->slot = s->newcodes; s->top_slot = 1 << s->cursize; - s->top_slot2 = s->top_slot; - if(s->mode == FF_LZW_TIFF) - s->top_slot2--; while ((c = lzw_get_code(s)) == s->clear_code); if (c == s->end_code) { s->end_code = -1; @@ -239,12 +236,9 @@ s->prefix[s->slot++] = oc; oc = c; } - if (s->slot >= s->top_slot2) { + if (s->slot >= s->top_slot - s->extra_slot) { if (s->cursize < LZW_MAXBITS) { s->top_slot <<= 1; - s->top_slot2 = s->top_slot; - if(s->mode == FF_LZW_TIFF) - s->top_slot2--; s->curmask = mask[++s->cursize]; } }