diff --git a/libavcodec/lzw.c b/libavcodec/lzw.c index cb12eb8573..240ff13491 100644 --- a/libavcodec/lzw.c +++ b/libavcodec/lzw.c @@ -192,13 +192,12 @@ int ff_lzw_decode(LZWState *p, uint8_t *buf, int len){ oc = s->oc; fc = s->fc; - while (sp > s->stack) { - *buf++ = *(--sp); - if ((--l) == 0) - goto the_end; - } - for (;;) { + while (sp > s->stack) { + *buf++ = *(--sp); + if ((--l) == 0) + goto the_end; + } c = lzw_get_code(s); if (c == s->end_code) { s->end_code = -1; @@ -242,11 +241,6 @@ int ff_lzw_decode(LZWState *p, uint8_t *buf, int len){ s->curmask = mask[++s->cursize]; } } - while (sp > s->stack) { - *buf++ = *(--sp); - if ((--l) == 0) - goto the_end; - } } } the_end: