Make sure the next used frame is released so get_buffer() wont fail.
[libav.git] / libavcodec / snow.c
index b919ef3..49b7ff2 100644 (file)
@@ -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);
     }
 
+    release_buffer(s->avctx);
+
     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->halfpel_plane+1, s->halfpel_plane, (s->max_ref_frames-1)*sizeof(void*)*4*4);