diff options
author | mistraid121 <guillaume.sanahuja@tuta.io> | 2024-03-19 09:41:26 +0100 |
---|---|---|
committer | Kacper Michajłow <kasper93@gmail.com> | 2024-03-19 19:32:55 +0100 |
commit | 574f269d3238040c088faff67cc133fe7c630a46 (patch) | |
tree | 79a647314ab58a4efaa27bbeaa0b78df927190b5 /audio | |
parent | 5fea0f9a475fc6ce9bfb4ca18da489c881313ce8 (diff) | |
download | mpv-574f269d3238040c088faff67cc133fe7c630a46.tar.bz2 mpv-574f269d3238040c088faff67cc133fe7c630a46.tar.xz |
af_lavcac3enc: fix memory leak on 2ch audio
If processing is not required, the frame would be leaked as it is not used.
Diffstat (limited to 'audio')
-rw-r--r-- | audio/filter/af_lavcac3enc.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/audio/filter/af_lavcac3enc.c b/audio/filter/af_lavcac3enc.c index c55e32a21b..ec3330f17b 100644 --- a/audio/filter/af_lavcac3enc.c +++ b/audio/filter/af_lavcac3enc.c @@ -195,9 +195,6 @@ static void process(struct mp_filter *f) case MP_FRAME_AUDIO: TA_FREEP(&s->in_frame); s->in_frame = input.data; - frame = mp_frame_to_av(input, NULL); - if (!frame) - goto error; if (mp_aframe_get_channels(s->in_frame) < s->opts->min_channel_num) { // Just pass it through. s->in_frame = NULL; @@ -208,6 +205,9 @@ static void process(struct mp_filter *f) if (!reinit(f)) goto error; } + frame = mp_frame_to_av(input, NULL); + if (!frame) + goto error; break; default: goto error; // unexpected packet type } |