[FFmpeg-cvslog] h264_metadata: Fix memory leak on multiple display orientation messages

Mark Thompson git at videolan.org
Tue Mar 20 01:17:47 EET 2018


ffmpeg | branch: master | Mark Thompson <sw at jkqxz.net> | Mon Mar 19 23:12:01 2018 +0000| [1c49365c62f417a9e7ed764ac4dd940a2ce8b08d] | committer: Mark Thompson

h264_metadata: Fix memory leak on multiple display orientation messages

Fixes CID #1430176.

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

 libavcodec/h264_metadata_bsf.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavcodec/h264_metadata_bsf.c b/libavcodec/h264_metadata_bsf.c
index 3dc4affddd..e1f0c43b71 100644
--- a/libavcodec/h264_metadata_bsf.c
+++ b/libavcodec/h264_metadata_bsf.c
@@ -437,6 +437,10 @@ static int h264_metadata_filter(AVBSFContext *bsf, AVPacket *out)
                                         180.0 / 65536.0);
                 av_display_matrix_flip(matrix, disp->hor_flip, disp->ver_flip);
 
+                // If there are multiple display orientation messages in an
+                // access unit then ignore all but the last one.
+                av_freep(&displaymatrix_side_data);
+
                 displaymatrix_side_data      = (uint8_t*)matrix;
                 displaymatrix_side_data_size = 9 * sizeof(int32_t);
             }



More information about the ffmpeg-cvslog mailing list