diff --git a/libavfilter/vf_fps.c b/libavfilter/vf_fps.c index ab7cba57d1..bf140f8143 100644 --- a/libavfilter/vf_fps.c +++ b/libavfilter/vf_fps.c @@ -161,8 +161,10 @@ static int write_to_fifo(AVFifoBuffer *fifo, AVFilterBufferRef *buf) int ret; if (!av_fifo_space(fifo) && - (ret = av_fifo_realloc2(fifo, 2*av_fifo_size(fifo)))) + (ret = av_fifo_realloc2(fifo, 2*av_fifo_size(fifo)))) { + avfilter_unref_bufferp(&buf); return ret; + } av_fifo_generic_write(fifo, &buf, sizeof(buf), NULL); return 0;