Skip to content
Snippets Groups Projects
Commit 7d3baebe authored by Andreas Cadhalpun's avatar Andreas Cadhalpun
Browse files

opus_parser: fix leaking channel_maps on error


Make ff_opus_parse_extradata free allocated memory on error instead of
expecting callers to free it in that case.

Reviewed-by: default avatarMichael Niedermayer <michael@niedermayer.cc>
Signed-off-by: default avatarAndreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
parent df694a5e
No related branches found
No related tags found
No related merge requests found
......@@ -403,6 +403,7 @@ av_cold int ff_opus_parse_extradata(AVCodecContext *avctx,
} else if (idx >= streams + stereo_streams) {
av_log(avctx, AV_LOG_ERROR,
"Invalid channel map for output channel %d: %d\n", i, idx);
av_freep(&s->channel_maps);
return AVERROR_INVALIDDATA;
}
......
......@@ -646,7 +646,6 @@ static av_cold int opus_decode_init(AVCodecContext *avctx)
/* find out the channel configuration */
ret = ff_opus_parse_extradata(avctx, c);
if (ret < 0) {
av_freep(&c->channel_maps);
av_freep(&c->fdsp);
return ret;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment