]> git.sesse.net Git - ffmpeg/blobdiff - libavfilter/af_afftfilt.c
Merge commit 'f25117a4286505b38c12466ef04459471de3c1b0'
[ffmpeg] / libavfilter / af_afftfilt.c
index 52755a1fb42d3524c41c8b5185408cff2cb73931..7f28e1f77bcdf3437a6d544722c9b7a07ccf71a5 100644 (file)
@@ -197,8 +197,10 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
     int ch, n, ret, i, j, k;
     int start = s->start, end = s->end;
 
-    av_audio_fifo_write(s->fifo, (void **)frame->extended_data, frame->nb_samples);
+    ret = av_audio_fifo_write(s->fifo, (void **)frame->extended_data, frame->nb_samples);
     av_frame_free(&frame);
+    if (ret < 0)
+        return ret;
 
     while (av_audio_fifo_size(s->fifo) >= window_size) {
         if (!in) {
@@ -316,7 +318,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
     }
 
     av_frame_free(&in);
-    return ret;
+    return ret < 0 ? ret : 0;
 }
 
 static int query_formats(AVFilterContext *ctx)