---
 libavfilter/buffersrc.c |   10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/libavfilter/buffersrc.c b/libavfilter/buffersrc.c
index ad665be..63a3742 100644
--- a/libavfilter/buffersrc.c
+++ b/libavfilter/buffersrc.c
@@ -323,21 +323,19 @@ static int request_frame(AVFilterLink *link)
 
     switch (link->type) {
     case AVMEDIA_TYPE_VIDEO:
-        if ((ret = ff_start_frame(link, avfilter_ref_buffer(buf, ~0))) < 0 ||
+        if ((ret = ff_start_frame(link, buf)) < 0 ||
             (ret = ff_draw_slice(link, 0, link->h, 1)) < 0 ||
             (ret = ff_end_frame(link)) < 0)
-            goto fail;
+            return ret;
         break;
     case AVMEDIA_TYPE_AUDIO:
-        ret = ff_filter_samples(link, avfilter_ref_buffer(buf, ~0));
+        ret = ff_filter_samples(link, buf);
         break;
     default:
+        avfilter_unref_bufferp(&buf);
         return AVERROR(EINVAL);
     }
 
-fail:
-    avfilter_unref_buffer(buf);
-
     return ret;
 }
 
-- 
1.7.10

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to