Commit 086be66e authored by michaelni's avatar michaelni

segfault fix


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@418 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent 180ccbf5
...@@ -359,8 +359,13 @@ void mpeg4_encode_mb(MpegEncContext * s, ...@@ -359,8 +359,13 @@ void mpeg4_encode_mb(MpegEncContext * s,
uint8_t *p_pic= s->new_picture[0] + offset; uint8_t *p_pic= s->new_picture[0] + offset;
s->mb_skiped=1; s->mb_skiped=1;
for(i=0; i<s->max_b_frames; i++){ for(i=0; i<s->max_b_frames; i++){
uint8_t *b_pic= s->coded_order[i+1].picture[0] + offset; uint8_t *b_pic;
int diff= pix_abs16x16(p_pic, b_pic, s->linesize); int diff;
if(s->coded_order[i+1].pict_type!=B_TYPE) break;
b_pic= s->coded_order[i+1].picture[0] + offset;
diff= pix_abs16x16(p_pic, b_pic, s->linesize);
if(diff>s->qscale*70){ if(diff>s->qscale*70){
s->mb_skiped=0; s->mb_skiped=0;
break; break;
......
...@@ -645,6 +645,7 @@ void reorder_input(MpegEncContext *s, AVPicture *pict) ...@@ -645,6 +645,7 @@ void reorder_input(MpegEncContext *s, AVPicture *pict)
s->coded_order[j]= s->coded_order[j+1]; s->coded_order[j]= s->coded_order[j+1];
} }
s->coded_order[j].picture[0]= s->coded_order[j].picture[1]= s->coded_order[j].picture[2]= NULL; //catch uninitalized buffers s->coded_order[j].picture[0]= s->coded_order[j].picture[1]= s->coded_order[j].picture[2]= NULL; //catch uninitalized buffers
s->coded_order[j].pict_type=0;
switch(s->input_pict_type){ switch(s->input_pict_type){
default: default:
......
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