remove code_prefix variable, no speed change

Originally committed as revision 8700 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Michael Niedermayer 18 years ago
parent adf6640c8c
commit 0ddfb84d6d
  1. 12
      libavcodec/lzwenc.c

@ -220,29 +220,27 @@ void ff_lzw_encode_init(LZWEncodeState * s, uint8_t * outbuf, int outsize, int m
int ff_lzw_encode(LZWEncodeState * s, const uint8_t * inbuf, int insize) int ff_lzw_encode(LZWEncodeState * s, const uint8_t * inbuf, int insize)
{ {
int i; int i;
int code_prefix = s->last_code;
if(insize * 3 > (s->bufsize - s->output_bytes) * 2){ if(insize * 3 > (s->bufsize - s->output_bytes) * 2){
return -1; return -1;
} }
if (code_prefix == LZW_PREFIX_EMPTY) if (s->last_code == LZW_PREFIX_EMPTY)
clearTable(s); clearTable(s);
for (i = 0; i < insize; i++) { for (i = 0; i < insize; i++) {
uint8_t c = *inbuf++; uint8_t c = *inbuf++;
int code = findCode(s, c, code_prefix); int code = findCode(s, c, s->last_code);
if (s->tab[code].hash_prefix == LZW_PREFIX_FREE) { if (s->tab[code].hash_prefix == LZW_PREFIX_FREE) {
writeCode(s, code_prefix); writeCode(s, s->last_code);
addCode(s, c, code_prefix, code); addCode(s, c, s->last_code, code);
code= hash(0, c); code= hash(0, c);
} }
code_prefix = s->tab[code].code; s->last_code = s->tab[code].code;
if (s->tabsize >= s->maxcode - 1) { if (s->tabsize >= s->maxcode - 1) {
clearTable(s); clearTable(s);
} }
} }
s->last_code = code_prefix;
return writtenBytes(s); return writtenBytes(s);
} }

Loading…
Cancel
Save