lavfi/sinc: fix memory leak in error handling path

free work&pi_wraps in error handling path to avoid memory leak.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
This commit is contained in:
Jun Zhao 2019-09-10 18:50:11 +08:00
parent 44b55a8c9c
commit 944d76a3e0
1 changed files with 4 additions and 1 deletions

View File

@ -239,8 +239,11 @@ static int fir_to_phase(SincContext *s, float **h, int *len, int *post_len, floa
s->rdft = s->irdft = NULL;
s->rdft = av_rdft_init(av_log2(work_len), DFT_R2C);
s->irdft = av_rdft_init(av_log2(work_len), IDFT_C2R);
if (!s->rdft || !s->irdft)
if (!s->rdft || !s->irdft) {
av_free(pi_wraps);
av_free(work);
return AVERROR(ENOMEM);
}
av_rdft_calc(s->rdft, work); /* Cepstral: */
UNPACK(work, work_len);