[FFmpeg-cvslog] avformat/avc: return an error in ff_isom_write_avcc if the buffer lenght is too small

James Almer git at videolan.org
Thu Nov 30 05:38:29 EET 2017


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Fri Nov 24 19:42:50 2017 -0300| [ae7df68edd79bce5c318810c6b307ee4e81cd2a6] | committer: James Almer

avformat/avc: return an error in ff_isom_write_avcc if the buffer lenght is too small

Signed-off-by: James Almer <jamrial at gmail.com>

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

 libavformat/avc.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavformat/avc.c b/libavformat/avc.c
index 094a95821f..5232ed55f8 100644
--- a/libavformat/avc.c
+++ b/libavformat/avc.c
@@ -105,7 +105,9 @@ int ff_avc_parse_nal_units_buf(const uint8_t *buf_in, uint8_t **buf, int *size)
 
 int ff_isom_write_avcc(AVIOContext *pb, const uint8_t *data, int len)
 {
-    if (len > 6) {
+    if (len <= 6)
+        return AVERROR_INVALIDDATA;
+
         /* check for H.264 start code */
         if (AV_RB32(data) == 0x00000001 ||
             AV_RB24(data) == 0x000001) {
@@ -157,7 +159,6 @@ int ff_isom_write_avcc(AVIOContext *pb, const uint8_t *data, int len)
         } else {
             avio_write(pb, data, len);
         }
-    }
     return 0;
 }
 



More information about the ffmpeg-cvslog mailing list