diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-05-17 22:38:34 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-05-17 22:44:28 +0200 |
commit | b3e1b95afaff7ed53baef2d193e0968cade7e94b (patch) | |
tree | 5507fcedfea90ed1bffa2b9ccf96a2208e046bda /libavfilter/af_aresample.c | |
parent | a99a3b1bb311bcff458f2cb9e657882bfd46a669 (diff) | |
download | ffmpeg-streaming-b3e1b95afaff7ed53baef2d193e0968cade7e94b.zip ffmpeg-streaming-b3e1b95afaff7ed53baef2d193e0968cade7e94b.tar.gz |
aresample: check return code of swr_convert()
Issue found by comparing af_resample.c and af_aresample.c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavfilter/af_aresample.c')
-rw-r--r-- | libavfilter/af_aresample.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libavfilter/af_aresample.c b/libavfilter/af_aresample.c index dde79e2..8e616e2 100644 --- a/libavfilter/af_aresample.c +++ b/libavfilter/af_aresample.c @@ -169,6 +169,11 @@ static void filter_samples(AVFilterLink *inlink, AVFilterBufferRef *insamplesref n_out = swr_convert(aresample->swr, outsamplesref->data, n_out, (void *)insamplesref->data, n_in); + if (n_out <= 0) { + avfilter_unref_buffer(outsamplesref); + avfilter_unref_buffer(insamplesref); + return; + } avfilter_copy_buffer_ref_props(outsamplesref, insamplesref); outsamplesref->audio->sample_rate = outlink->sample_rate; |