correct another possible buffer overflow where interlaced would
get stuck to 1 but then width/height would change and interlaced wouldnt be reset ... Originally committed as revision 8735 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
c28baf069d
commit
6c3dba5760
@ -1171,6 +1171,7 @@ static int mjpeg_decode_sof(MJpegDecodeContext *s)
|
|||||||
|
|
||||||
s->width = width;
|
s->width = width;
|
||||||
s->height = height;
|
s->height = height;
|
||||||
|
s->interlaced = 0;
|
||||||
|
|
||||||
/* test interlaced mode */
|
/* test interlaced mode */
|
||||||
if (s->first_picture &&
|
if (s->first_picture &&
|
||||||
@ -2258,8 +2259,6 @@ read_header:
|
|||||||
skip_bits(&hgb, 32); /* padded field size */
|
skip_bits(&hgb, 32); /* padded field size */
|
||||||
second_field_offs = get_bits_long(&hgb, 32);
|
second_field_offs = get_bits_long(&hgb, 32);
|
||||||
av_log(avctx, AV_LOG_DEBUG, "second field offs: 0x%x\n", second_field_offs);
|
av_log(avctx, AV_LOG_DEBUG, "second field offs: 0x%x\n", second_field_offs);
|
||||||
if (second_field_offs)
|
|
||||||
s->interlaced = 1;
|
|
||||||
|
|
||||||
dqt_offs = get_bits_long(&hgb, 32);
|
dqt_offs = get_bits_long(&hgb, 32);
|
||||||
av_log(avctx, AV_LOG_DEBUG, "dqt offs: 0x%x\n", dqt_offs);
|
av_log(avctx, AV_LOG_DEBUG, "dqt offs: 0x%x\n", dqt_offs);
|
||||||
|
Loading…
Reference in New Issue
Block a user