truemotion2: Fix the buffer check
authorLuca Barbato <lu_zero@gentoo.org>
Sun, 1 Nov 2015 03:07:47 +0000 (04:07 +0100)
committerLuca Barbato <lu_zero@gentoo.org>
Mon, 2 Nov 2015 15:29:14 +0000 (16:29 +0100)
The variable skip contains the expected size in bytes.

Bug-Id: 906
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
libavcodec/truemotion2.c

index 84e8e2a..1726440 100644 (file)
@@ -291,7 +291,7 @@ static int tm2_read_stream(TM2Context *ctx, const uint8_t *buf, int stream_id, i
     if (len == 0)
         return 4;
 
-    if (len >= INT_MAX/4-1 || len < 0 || len > buf_size) {
+    if (len >= INT_MAX / 4 - 1 || len < 0 || skip > buf_size) {
         av_log(ctx->avctx, AV_LOG_ERROR, "Error, invalid stream size.\n");
         return AVERROR_INVALIDDATA;
     }