OSDN Git Service

avcodec/hevc_ps: Fix runtime error: signed integer overflow: 2147483628 + 256 cannot...
authorMichael Niedermayer <michael@niedermayer.cc>
Wed, 31 May 2017 20:02:07 +0000 (22:02 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Wed, 31 May 2017 20:05:32 +0000 (22:05 +0200)
Fixes: 1909/clusterfuzz-testcase-minimized-6732072662073344

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/hevc_ps.c

index 1808b0b..656d969 100644 (file)
@@ -751,7 +751,7 @@ static int scaling_list_data(GetBitContext *gb, AVCodecContext *avctx, ScalingLi
                                   ff_hevc_diag_scan8x8_x[i];
 
                     scaling_list_delta_coef = get_se_golomb(gb);
-                    next_coef = (next_coef + scaling_list_delta_coef + 256) % 256;
+                    next_coef = (next_coef + 256U + scaling_list_delta_coef) % 256;
                     sl->sl[size_id][matrix_id][pos] = next_coef;
                 }
             }