summaryrefslogtreecommitdiff
path: root/libavfilter/af_asetnsamples.c
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2017-11-20 14:02:28 +0100
committerPaul B Mahol <onemda@gmail.com>2017-11-21 18:29:39 +0100
commit000836c2a98e1c6a2867dd9db0371c137609acf0 (patch)
treed1640b78cf8c97892418ee0512923a2a04a79d1e /libavfilter/af_asetnsamples.c
parentbea8eeaa2c0c97f76bdedc02a1a01296b5bcaa28 (diff)
avfilter/af_asetnsamples: add missing error check
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Diffstat (limited to 'libavfilter/af_asetnsamples.c')
-rw-r--r--libavfilter/af_asetnsamples.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libavfilter/af_asetnsamples.c b/libavfilter/af_asetnsamples.c
index 3c2f66b30a..ecb76e64db 100644
--- a/libavfilter/af_asetnsamples.c
+++ b/libavfilter/af_asetnsamples.c
@@ -140,11 +140,14 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *insamples)
return -1;
}
}
- av_audio_fifo_write(asns->fifo, (void **)insamples->extended_data, nb_samples);
- if (asns->next_out_pts == AV_NOPTS_VALUE)
+ ret = av_audio_fifo_write(asns->fifo, (void **)insamples->extended_data, nb_samples);
+ if (ret > 0 && asns->next_out_pts == AV_NOPTS_VALUE)
asns->next_out_pts = insamples->pts;
av_frame_free(&insamples);
+ if (ret < 0)
+ return ret;
+
while (av_audio_fifo_size(asns->fifo) >= asns->nb_out_samples)
push_samples(outlink);
return 0;