[SCM] libav/experimental: Fix yet another sechole.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:34:17 UTC 2013


The following commit has been merged in the experimental branch:
commit 268309750b56803642f12706aeb0576cd8183570
Author: Michael Niedermayer <michaelni at gmx.at>
Date:   Fri Dec 26 18:06:29 2008 +0000

    Fix yet another sechole.
    
    Originally committed as revision 16345 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/faxcompr.c b/libavcodec/faxcompr.c
index 54428e7..72ad8b9 100644
--- a/libavcodec/faxcompr.c
+++ b/libavcodec/faxcompr.c
@@ -156,10 +156,11 @@ static int decode_group3_1d_line(AVCodecContext *avctx, GetBitContext *gb,
 }
 
 static int decode_group3_2d_line(AVCodecContext *avctx, GetBitContext *gb,
-                                 int width, int *runs, const int *runend, const int *ref)
+                                 unsigned int width, int *runs, const int *runend, const int *ref)
 {
-    int mode = 0, offs = 0, run = 0, saved_run = 0, t;
+    int mode = 0, saved_run = 0, t;
     int run_off = *ref++;
+    unsigned int offs=0, run= 0;
 
     runend--; // for the last written 0
 
@@ -200,7 +201,7 @@ static int decode_group3_2d_line(AVCodecContext *avctx, GetBitContext *gb,
                 }
                 saved_run = 0;
                 offs += run;
-                if(offs > width){
+                if(offs > width || run > width){
                     av_log(avctx, AV_LOG_ERROR, "Run went out of bounds\n");
                     return -1;
                 }

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list