[FFmpeg-cvslog] vp9: change type of tile_size from unsigned to int64_t

Andreas Cadhalpun git at videolan.org
Thu Aug 20 14:53:41 CEST 2015


ffmpeg | branch: release/2.4 | Andreas Cadhalpun <Andreas.Cadhalpun at googlemail.com> | Sun Jun  7 18:50:43 2015 +0200| [9da5ba1f57a4185d97edac743b42215319307b8c] | committer: Michael Niedermayer

vp9: change type of tile_size from unsigned to int64_t

Otherwise the check 'tile_size < size' treats a negative size as
unsigned, causing the check to pass. This subsequently leads to
segmentation faults.

This was originally fixed as part of Libav commit 72ca83, so the
original author is one of the following developers:
        Anton Khirnov <anton at khirnov.net>
        Diego Biurrun <diego at biurrun.de>
        Luca Barbato <lu_zero at gentoo.org>
        Martin Storsjö <martin at martin.st>

Reviewed-by: Ronald S. Bultje <rsbultje at gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun at googlemail.com>
(cherry picked from commit b18eac7ff22332c9344769af15f7b245dd13cc64)

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

 libavcodec/vp9.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/vp9.c b/libavcodec/vp9.c
index 8861cc0..3be17c0 100644
--- a/libavcodec/vp9.c
+++ b/libavcodec/vp9.c
@@ -3841,7 +3841,7 @@ static int vp9_decode_frame(AVCodecContext *ctx, void *frame,
                             tile_row, s->tiling.log2_tile_rows, s->sb_rows);
             if (s->pass != 2) {
                 for (tile_col = 0; tile_col < s->tiling.tile_cols; tile_col++) {
-                    unsigned tile_size;
+                    int64_t tile_size;
 
                     if (tile_col == s->tiling.tile_cols - 1 &&
                         tile_row == s->tiling.tile_rows - 1) {



More information about the ffmpeg-cvslog mailing list