提交 37b787f1 编写于 作者: M Michael Niedermayer

some checks to avoid segfaults if the decoder is feeded with junk

Originally committed as revision 1757 to svn://svn.ffmpeg.org/ffmpeg/trunk
上级 9c00c3af
......@@ -1858,6 +1858,12 @@ static int mpeg_decode_slice(AVCodecContext *avctx,
}
}else{ //second field
int i;
if(!s->current_picture_ptr){
fprintf(stderr, "first field missing\n");
return -1;
}
for(i=0; i<4; i++){
s->current_picture.data[i] = s->current_picture_ptr->data[i];
if(s->picture_structure == PICT_BOTTOM_FIELD){
......@@ -2266,6 +2272,8 @@ static int mpeg_decode_frame(AVCodecContext *avctx,
/* skip everything if we are in a hurry>=5 */
if(avctx->hurry_up>=5) break;
if (!s->mpeg_enc_ctx_allocated) break;
ret = mpeg_decode_slice(avctx, picture,
start_code, s->buffer, input_size);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册