swresample/resample: Limit filter length
Related to CID1197063
The limit choosen is arbitrary and much larger than what makes sense.
It avoids the need for checking arithmetic operations with the length for overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit f9158b01d0
)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
@@ -229,6 +229,11 @@ static ResampleContext *resample_init(ResampleContext *c, int out_rate, int in_r
|
|||||||
av_assert0(0);
|
av_assert0(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (filter_size/factor > INT32_MAX/256) {
|
||||||
|
av_log(NULL, AV_LOG_ERROR, "Filter length too large\n");
|
||||||
|
goto error;
|
||||||
|
}
|
||||||
|
|
||||||
c->phase_shift = phase_shift;
|
c->phase_shift = phase_shift;
|
||||||
c->phase_mask = phase_count - 1;
|
c->phase_mask = phase_count - 1;
|
||||||
c->linear = linear;
|
c->linear = linear;
|
||||||
|
Reference in New Issue
Block a user