ffmpeg | branch: master | Vadym Bezdushnyi <[email protected]> | Sun Jan 31 16:52:45 2021 +0200| [bc04ea39a57a22dd4d26946a83e166f090218054] | committer: Marton Balint
avformat/movenccenc: Fix memory leak for muxing CENC-encrypted files Memory for auxillary_info was not freed after usage. Leak can be reproduced with following commands: Optionally, generate input video: ffmpeg -f lavfi -i testsrc=duration=10:size=1280x720:rate=30 input.mp4 Run ffmpeg with valgrind: valgrind --leak-check=full --show-leak-kinds=all \ ffmpeg -y -i input.mp4 -vcodec copy -acodec copy \ -encryption_scheme cenc-aes-ctr \ -encryption_key 00000000000000000000000000000000 \ -encryption_kid 00000000000000000000000000000000 \ ffmpeg_encrypted.mp4 For test video which has duration of 10 sec, leak is 4 Kb. For 100 sec video, leak will be 33 Kb. Most likely, leaked memory will grow linearly to the number of input frames. Signed-off-by: Vadym Bezdushnyi <[email protected]> Signed-off-by: Marton Balint <[email protected]> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=bc04ea39a57a22dd4d26946a83e166f090218054 --- libavformat/movenccenc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavformat/movenccenc.c b/libavformat/movenccenc.c index b91294f706..74f3c4ccfb 100644 --- a/libavformat/movenccenc.c +++ b/libavformat/movenccenc.c @@ -412,4 +412,6 @@ int ff_mov_cenc_init(MOVMuxCencContext* ctx, uint8_t* encryption_key, void ff_mov_cenc_free(MOVMuxCencContext* ctx) { av_aes_ctr_free(ctx->aes_ctr); + av_freep(&ctx->auxiliary_info); + av_freep(&ctx->auxiliary_info_sizes); } _______________________________________________ ffmpeg-cvslog mailing list [email protected] https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
