Commit 55a1fe7a authored by Reimar Döffinger's avatar Reimar Döffinger

Reset cur_scan at more appropriate places.

Reset it when we actually process an EOI, not when we actually
decide to ignore it for bug-workarounds, and reset it on
SOF to make it more reliable in case of missing EOI.
Signed-off-by: 's avatarReimar Döffinger <Reimar.Doeffinger@gmx.de>
parent d5d7de76
...@@ -219,6 +219,8 @@ int ff_mjpeg_decode_sof(MJpegDecodeContext *s) ...@@ -219,6 +219,8 @@ int ff_mjpeg_decode_sof(MJpegDecodeContext *s)
{ {
int len, nb_components, i, width, height, pix_fmt_id; int len, nb_components, i, width, height, pix_fmt_id;
s->cur_scan = 0;
/* XXX: verify len field validity */ /* XXX: verify len field validity */
len = get_bits(&s->gb, 16); len = get_bits(&s->gb, 16);
s->bits= get_bits(&s->gb, 8); s->bits= get_bits(&s->gb, 8);
...@@ -1484,10 +1486,10 @@ int ff_mjpeg_decode_frame(AVCodecContext *avctx, ...@@ -1484,10 +1486,10 @@ int ff_mjpeg_decode_frame(AVCodecContext *avctx,
return -1; return -1;
break; break;
case EOI: case EOI:
s->cur_scan = 0;
if ((s->buggy_avid && !s->interlaced) || s->restart_interval) if ((s->buggy_avid && !s->interlaced) || s->restart_interval)
break; break;
eoi_parser: eoi_parser:
s->cur_scan = 0;
if (!s->got_picture) { if (!s->got_picture) {
av_log(avctx, AV_LOG_WARNING, "Found EOI before any SOF, ignoring\n"); av_log(avctx, AV_LOG_WARNING, "Found EOI before any SOF, ignoring\n");
break; break;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment