summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLimin Wang <lance.lmwang@gmail.com>2019-12-19 13:09:06 +0800
committerJames Almer <jamrial@gmail.com>2019-12-20 22:46:04 -0300
commit5e5bbd21e6623074370dbeefd595307fa3dfb648 (patch)
tree9a6ac992f368a7d716686f3732e4c376ccf26070
parenta86bb2f606da64d287b1dd807a4f691c39f1a1ec (diff)
avcodec/h264_sei: fix the size of user data unregistered
According to the specifications, the payloadSize includes the 16-byte size of UUID. Signed-off-by: Limin Wang <lance.lmwang@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
-rw-r--r--libavcodec/h264_sei.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libavcodec/h264_sei.c b/libavcodec/h264_sei.c
index d4eb9c0dab..a565feabe2 100644
--- a/libavcodec/h264_sei.c
+++ b/libavcodec/h264_sei.c
@@ -247,14 +247,14 @@ static int decode_unregistered_user_data(H264SEIUnregistered *h, GetBitContext *
uint8_t *user_data;
int e, build, i;
- if (size < 16 || size >= INT_MAX - 16)
+ if (size < 16 || size >= INT_MAX - 1)
return AVERROR_INVALIDDATA;
- user_data = av_malloc(16 + size + 1);
+ user_data = av_malloc(size + 1);
if (!user_data)
return AVERROR(ENOMEM);
- for (i = 0; i < size + 16; i++)
+ for (i = 0; i < size; i++)
user_data[i] = get_bits(gb, 8);
user_data[i] = 0;