mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avcodec/avcodec: Actually honour the documentation of subtitle_header
It is only supposed to be freed by libavcodec for decoders, yet avcodec_open2() always frees it on failure. Furthermore, avcodec_close() doesn't free it for decoders. Both of this has been changed. Reviewed-by: James Almer <jamrial@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
878e45e0fb
commit
a1ed984e04
@ -418,7 +418,8 @@ FF_ENABLE_DEPRECATION_WARNINGS
|
||||
|
||||
av_dict_free(&tmp);
|
||||
av_freep(&avctx->priv_data);
|
||||
av_freep(&avctx->subtitle_header);
|
||||
if (av_codec_is_decoder(avctx->codec))
|
||||
av_freep(&avctx->subtitle_header);
|
||||
|
||||
#if FF_API_OLD_ENCDEC
|
||||
av_frame_free(&avci->to_free);
|
||||
@ -589,7 +590,9 @@ FF_DISABLE_DEPRECATION_WARNINGS
|
||||
av_frame_free(&avctx->coded_frame);
|
||||
FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
}
|
||||
} else if (av_codec_is_decoder(avctx->codec))
|
||||
av_freep(&avctx->subtitle_header);
|
||||
|
||||
avctx->codec = NULL;
|
||||
avctx->active_thread_type = 0;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user