mirror of https://git.ffmpeg.org/ffmpeg.git
snow: fix integer overflows
The way these values are used, they should have an unsigned type.
A similar change was made for mpegvideo in cb66847
.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This commit is contained in:
parent
0e55edcb57
commit
8540dcfd7a
|
@ -154,8 +154,8 @@ typedef struct SnowContext{
|
||||||
Plane plane[MAX_PLANES];
|
Plane plane[MAX_PLANES];
|
||||||
BlockNode *block;
|
BlockNode *block;
|
||||||
#define ME_CACHE_SIZE 1024
|
#define ME_CACHE_SIZE 1024
|
||||||
int me_cache[ME_CACHE_SIZE];
|
unsigned me_cache[ME_CACHE_SIZE];
|
||||||
int me_cache_generation;
|
unsigned me_cache_generation;
|
||||||
slice_buffer sb;
|
slice_buffer sb;
|
||||||
int memc_only;
|
int memc_only;
|
||||||
|
|
||||||
|
|
|
@ -958,7 +958,8 @@ static av_always_inline int check_block(SnowContext *s, int mb_x, int mb_y, int
|
||||||
const int b_stride= s->b_width << s->block_max_depth;
|
const int b_stride= s->b_width << s->block_max_depth;
|
||||||
BlockNode *block= &s->block[mb_x + mb_y * b_stride];
|
BlockNode *block= &s->block[mb_x + mb_y * b_stride];
|
||||||
BlockNode backup= *block;
|
BlockNode backup= *block;
|
||||||
int rd, index, value;
|
unsigned value;
|
||||||
|
int rd, index;
|
||||||
|
|
||||||
assert(mb_x>=0 && mb_y>=0);
|
assert(mb_x>=0 && mb_y>=0);
|
||||||
assert(mb_x<b_stride);
|
assert(mb_x<b_stride);
|
||||||
|
@ -1003,7 +1004,8 @@ static av_always_inline int check_4block_inter(SnowContext *s, int mb_x, int mb_
|
||||||
const int b_stride= s->b_width << s->block_max_depth;
|
const int b_stride= s->b_width << s->block_max_depth;
|
||||||
BlockNode *block= &s->block[mb_x + mb_y * b_stride];
|
BlockNode *block= &s->block[mb_x + mb_y * b_stride];
|
||||||
BlockNode backup[4]= {block[0], block[1], block[b_stride], block[b_stride+1]};
|
BlockNode backup[4]= {block[0], block[1], block[b_stride], block[b_stride+1]};
|
||||||
int rd, index, value;
|
unsigned value;
|
||||||
|
int rd, index;
|
||||||
|
|
||||||
assert(mb_x>=0 && mb_y>=0);
|
assert(mb_x>=0 && mb_y>=0);
|
||||||
assert(mb_x<b_stride);
|
assert(mb_x<b_stride);
|
||||||
|
|
Loading…
Reference in New Issue