Commit 9469370f authored by Jake Sebastian-Jones's avatar Jake Sebastian-Jones Committed by Luca Barbato

h264: Use AVERROR return codes instead of -1

And report why it fails.
Signed-off-by: 's avatarLuca Barbato <lu_zero@gentoo.org>
parent e5997152
...@@ -1273,15 +1273,20 @@ static int get_avc_nalsize(H264Context *h, const uint8_t *buf, ...@@ -1273,15 +1273,20 @@ static int get_avc_nalsize(H264Context *h, const uint8_t *buf,
{ {
int i, nalsize = 0; int i, nalsize = 0;
if (*buf_index >= buf_size - h->nal_length_size) if (*buf_index >= buf_size - h->nal_length_size) {
return -1; av_log(h->avctx, AV_LOG_ERROR,
"AVC: The buffer size %d is too short to read "
"the nal length size %d at the offset %d.\n",
buf_size, h->nal_length_size, *buf_index);
return AVERROR_INVALIDDATA;
}
for (i = 0; i < h->nal_length_size; i++) for (i = 0; i < h->nal_length_size; i++)
nalsize = (nalsize << 8) | buf[(*buf_index)++]; nalsize = (nalsize << 8) | buf[(*buf_index)++];
if (nalsize <= 0 || nalsize > buf_size - *buf_index) { if (nalsize <= 0 || nalsize > buf_size - *buf_index) {
av_log(h->avctx, AV_LOG_ERROR, av_log(h->avctx, AV_LOG_ERROR,
"AVC: nal size %d\n", nalsize); "AVC: nal size %d\n", nalsize);
return -1; return AVERROR_INVALIDDATA;
} }
return nalsize; return nalsize;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment