From c44a028e19c89671dbd614c283f7e5fe2f555139 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Mon, 19 Nov 2012 15:55:23 +0100 Subject: [PATCH] af_aresample: allocate at least 1 sample buffer. Fix null ptr dereference. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer --- libavfilter/af_aresample.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/libavfilter/af_aresample.c b/libavfilter/af_aresample.c index 53c5dcd52f..7201d37f40 100644 --- a/libavfilter/af_aresample.c +++ b/libavfilter/af_aresample.c @@ -174,12 +174,11 @@ static int filter_samples(AVFilterLink *inlink, AVFilterBufferRef *insamplesref) { AResampleContext *aresample = inlink->dst->priv; const int n_in = insamplesref->audio->nb_samples; - int n_out = n_in * aresample->ratio * 2 ; + int n_out = FFMAX(n_in * aresample->ratio * 2, 1); AVFilterLink *const outlink = inlink->dst->outputs[0]; AVFilterBufferRef *outsamplesref = ff_get_audio_buffer(outlink, AV_PERM_WRITE, n_out); int ret; - avfilter_copy_buffer_ref_props(outsamplesref, insamplesref); outsamplesref->format = outlink->format; outsamplesref->audio->channel_layout = outlink->channel_layout;