Message ID | AM7PR03MB66605129F843D381D99906C78FEA9@AM7PR03MB6660.eurprd03.prod.outlook.com |
---|---|
State | Accepted |
Commit | 9f19fbba4a84ddff73e32bfe13f0702a4bb40652 |
Headers | show |
Series | [FFmpeg-devel] avformat/fifo: Free dict on av_dict_copy() failure | expand |
Context | Check | Description |
---|---|---|
andriy/x86_make | success | Make finished |
andriy/x86_make_fate | success | Make fate finished |
andriy/PPC64_make | success | Make finished |
andriy/PPC64_make_fate | success | Make fate finished |
diff --git a/libavformat/fifo.c b/libavformat/fifo.c index a9b59b6589..10511167cd 100644 --- a/libavformat/fifo.c +++ b/libavformat/fifo.c @@ -129,7 +129,7 @@ static int fifo_thread_write_header(FifoThreadContext *ctx) ret = av_dict_copy(&format_options, fifo->format_options, 0); if (ret < 0) - return ret; + goto end; ret = ff_format_output_open(avf2, avf->url, &format_options); if (ret < 0) {
av_dict_copy() puts the onus on the caller to clean up dst on failure; it can be nonempty if copying a later entry of src fails after having successfully copied an earlier entry. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> --- It seems that av_dict_copy() together with the AV_DICT_DONT_STRDUP_KEY/VAL flags creates zombie src AVDictionaries. libavformat/fifo.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)