From 4eecd5bc66ed08f7cee245b621263cabf0b23dac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Reimar=20D=C3=B6ffinger?= Date: Fri, 22 Jul 2005 08:48:00 +0000 Subject: [PATCH] reset restart_count when restart_interval is set and fill the MJpegDecodeContext with 0 on init. Originally committed as revision 4464 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/mjpeg.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavcodec/mjpeg.c b/libavcodec/mjpeg.c index 7aaf1e73ad..8f24b075cf 100644 --- a/libavcodec/mjpeg.c +++ b/libavcodec/mjpeg.c @@ -882,6 +882,7 @@ static int mjpeg_decode_init(AVCodecContext *avctx) { MJpegDecodeContext *s = avctx->priv_data; MpegEncContext s2; + memset(s, 0, sizeof(MJpegDecodeContext)); s->avctx = avctx; @@ -1573,6 +1574,7 @@ static int mjpeg_decode_dri(MJpegDecodeContext *s) if (get_bits(&s->gb, 16) != 4) return -1; s->restart_interval = get_bits(&s->gb, 16); + s->restart_count = 0; dprintf("restart interval: %d\n", s->restart_interval); return 0; @@ -1892,6 +1894,7 @@ static int mjpeg_decode_frame(AVCodecContext *avctx, switch(start_code) { case SOI: s->restart_interval = 0; + s->restart_count = 0; /* nothing to do on SOI */ break; case DQT: @@ -2000,6 +2003,7 @@ static int mjpegb_decode_frame(AVCodecContext *avctx, read_header: /* reset on every SOI */ s->restart_interval = 0; + s->restart_count = 0; s->mjpb_skiptosod = 0; init_get_bits(&hgb, buf_ptr, /*buf_size*/(buf_end - buf_ptr)*8);