From: Jake Sebastian-Jones Date: Wed, 5 Aug 2015 06:15:39 +0000 (+1000) Subject: h264: Use AVERROR return codes instead of -1 X-Git-Tag: android-x86-7.1-r1~252^2~2123 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=9469370fb32679352e66826daf77bdd2e6f067b5;p=android-x86%2Fexternal-ffmpeg.git h264: Use AVERROR return codes instead of -1 And report why it fails. Signed-off-by: Luca Barbato --- diff --git a/libavcodec/h264.c b/libavcodec/h264.c index 7c2b307787..bf2ae361f6 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -1273,15 +1273,20 @@ static int get_avc_nalsize(H264Context *h, const uint8_t *buf, { int i, nalsize = 0; - if (*buf_index >= buf_size - h->nal_length_size) - return -1; + if (*buf_index >= buf_size - h->nal_length_size) { + 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++) nalsize = (nalsize << 8) | buf[(*buf_index)++]; if (nalsize <= 0 || nalsize > buf_size - *buf_index) { av_log(h->avctx, AV_LOG_ERROR, "AVC: nal size %d\n", nalsize); - return -1; + return AVERROR_INVALIDDATA; } return nalsize; }