[FFmpeg-cvslog] Revert "decode: copy the output parameters from the last bsf in the chain back to the AVCodecContext"

James Almer git at videolan.org
Wed Feb 20 19:07:46 EET 2019


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Wed Sep 12 15:21:09 2018 -0300| [cacb62f9cbf37bb05b00a025b21904b6966b6a49] | committer: James Almer

Revert "decode: copy the output parameters from the last bsf in the chain back to the AVCodecContext"

This reverts commit 662558f985f50834eebe82d6b6854c66f33ab320.

The avcodec_parameters_to_context() call was freeing and reallocating
AVCodecContext->extradata, essentially taking ownership of it, which according
to the doxy is user owned. This is an API break and has produces crashes in
some library users like Firefox.
Revert until a better solution is found to internally propagate the filtered
extradata back into the decoder context.

Signed-off-by: James Almer <jamrial at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=cacb62f9cbf37bb05b00a025b21904b6966b6a49
---

 libavcodec/decode.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/libavcodec/decode.c b/libavcodec/decode.c
index d10a2c8b58..2dab7f2a71 100644
--- a/libavcodec/decode.c
+++ b/libavcodec/decode.c
@@ -221,10 +221,6 @@ int ff_decode_bsfs_init(AVCodecContext *avctx)
             goto fail;
     }
 
-    ret = avcodec_parameters_to_context(avctx, s->bsfs[s->nb_bsfs - 1]->par_out);
-    if (ret < 0)
-        return ret;
-
     return 0;
 fail:
     ff_decode_bsfs_uninit(avctx);



More information about the ffmpeg-cvslog mailing list