mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2024-11-27 21:40:34 +00:00
avformat/hevc: Check num_long_term_ref_pics_sps to avoid potentially long loops
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
781efd0741
commit
ee155c18a2
@ -566,6 +566,8 @@ static int hvcc_parse_sps(GetBitContext *gb,
|
|||||||
|
|
||||||
if (get_bits1(gb)) { // long_term_ref_pics_present_flag
|
if (get_bits1(gb)) { // long_term_ref_pics_present_flag
|
||||||
unsigned num_long_term_ref_pics_sps = get_ue_golomb_long(gb);
|
unsigned num_long_term_ref_pics_sps = get_ue_golomb_long(gb);
|
||||||
|
if (num_long_term_ref_pics_sps > 31U)
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
for (i = 0; i < num_long_term_ref_pics_sps; i++) { // num_long_term_ref_pics_sps
|
for (i = 0; i < num_long_term_ref_pics_sps; i++) { // num_long_term_ref_pics_sps
|
||||||
int len = FFMIN(log2_max_pic_order_cnt_lsb_minus4 + 4, 16);
|
int len = FFMIN(log2_max_pic_order_cnt_lsb_minus4 + 4, 16);
|
||||||
skip_bits (gb, len); // lt_ref_pic_poc_lsb_sps[i]
|
skip_bits (gb, len); // lt_ref_pic_poc_lsb_sps[i]
|
||||||
|
Loading…
Reference in New Issue
Block a user