[FFmpeg-cvslog] h264: Use AVERROR return codes instead of -1

Jake Sebastian-Jones git at videolan.org
Fri Aug 7 09:56:01 CEST 2015


ffmpeg | branch: master | Jake Sebastian-Jones <jake.sebastian-jones at linux.com> | Wed Aug  5 16:15:39 2015 +1000| [9469370fb32679352e66826daf77bdd2e6f067b5] | committer: Luca Barbato

h264: Use AVERROR return codes instead of -1

And report why it fails.

Signed-off-by: Luca Barbato <lu_zero at gentoo.org>

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

 libavcodec/h264.c |   11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index 7c2b307..bf2ae36 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;
 }



More information about the ffmpeg-cvslog mailing list