diff options
author | Mark Thompson <sw@jkqxz.net> | 2018-03-19 23:12:01 +0000 |
---|---|---|
committer | Mark Thompson <sw@jkqxz.net> | 2018-03-19 23:12:01 +0000 |
commit | 1c49365c62f417a9e7ed764ac4dd940a2ce8b08d (patch) | |
tree | 667f020128d7ee7f14ce5f96e4b7206aea1f8886 | |
parent | e5b4cd4c4a9c98787b94ce33e268a61df9cf1587 (diff) | |
download | ffmpeg-1c49365c62f417a9e7ed764ac4dd940a2ce8b08d.tar.gz |
h264_metadata: Fix memory leak on multiple display orientation messages
Fixes CID #1430176.
-rw-r--r-- | libavcodec/h264_metadata_bsf.c | 4 |
1 files changed, 4 insertions, 0 deletions
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); } |