mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-03-23 04:24:35 +02:00
mjpegdec: check that the coded dc_index and ac_index have a valid associated VLC table.
Removes some disabled dc_index/ac_index checking code that seems to have had some undocumented issues and should not really be necessary anymore now. Fixes from issue 1240 the files mjpeg/smclockmjpeg.avi.1.10 and mjpeg/smclockmjpeg.avi.1.171. Originally committed as revision 19341 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
340e230392
commit
b27bf2a7b4
@ -922,24 +922,8 @@ int ff_mjpeg_decode_sos(MJpegDecodeContext *s)
|
|||||||
if (s->dc_index[i] < 0 || s->ac_index[i] < 0 ||
|
if (s->dc_index[i] < 0 || s->ac_index[i] < 0 ||
|
||||||
s->dc_index[i] >= 4 || s->ac_index[i] >= 4)
|
s->dc_index[i] >= 4 || s->ac_index[i] >= 4)
|
||||||
goto out_of_range;
|
goto out_of_range;
|
||||||
#if 0 //buggy
|
if (!s->vlcs[0][s->dc_index[i]].table || !s->vlcs[1][s->ac_index[i]].table)
|
||||||
switch(s->start_code)
|
|
||||||
{
|
|
||||||
case SOF0:
|
|
||||||
if (dc_index[i] > 1 || ac_index[i] > 1)
|
|
||||||
goto out_of_range;
|
goto out_of_range;
|
||||||
break;
|
|
||||||
case SOF1:
|
|
||||||
case SOF2:
|
|
||||||
if (dc_index[i] > 3 || ac_index[i] > 3)
|
|
||||||
goto out_of_range;
|
|
||||||
break;
|
|
||||||
case SOF3:
|
|
||||||
if (dc_index[i] > 3 || ac_index[i] != 0)
|
|
||||||
goto out_of_range;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
predictor= get_bits(&s->gb, 8); /* JPEG Ss / lossless JPEG predictor /JPEG-LS NEAR */
|
predictor= get_bits(&s->gb, 8); /* JPEG Ss / lossless JPEG predictor /JPEG-LS NEAR */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user