Make sure the next used frame is released so get_buffer() wont fail.

Originally committed as revision 18399 to svn://svn.ffmpeg.org/ffmpeg/trunk
release/0.6
Michael Niedermayer 16 years ago
parent 38fd076c21
commit cc0241283b
  1. 2
      libavcodec/snow.c

@ -4146,6 +4146,8 @@ static int frame_start(SnowContext *s){
s->dsp.draw_edges(s->current_picture.data[2], s->current_picture.linesize[2], w>>1, h>>1, EDGE_WIDTH/2); s->dsp.draw_edges(s->current_picture.data[2], s->current_picture.linesize[2], w>>1, h>>1, EDGE_WIDTH/2);
} }
release_buffer(s->avctx);
tmp= s->last_picture[s->max_ref_frames-1]; tmp= s->last_picture[s->max_ref_frames-1];
memmove(s->last_picture+1, s->last_picture, (s->max_ref_frames-1)*sizeof(AVFrame)); memmove(s->last_picture+1, s->last_picture, (s->max_ref_frames-1)*sizeof(AVFrame));
memmove(s->halfpel_plane+1, s->halfpel_plane, (s->max_ref_frames-1)*sizeof(void*)*4*4); memmove(s->halfpel_plane+1, s->halfpel_plane, (s->max_ref_frames-1)*sizeof(void*)*4*4);

Loading…
Cancel
Save