hevc: check that VPS referenced from SPS exists
This matches how its done for SPS/PPS. Fixes null pointer dereference. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
This commit is contained in:
parent
dd2d0039b6
commit
a7a07cc98a
@ -633,6 +633,13 @@ int ff_hevc_decode_nal_sps(HEVCContext *s)
|
||||
goto err;
|
||||
}
|
||||
|
||||
if (!s->vps_list[sps->vps_id]) {
|
||||
av_log(s->avctx, AV_LOG_ERROR, "VPS %d does not exist\n",
|
||||
sps->vps_id);
|
||||
ret = AVERROR_INVALIDDATA;
|
||||
goto err;
|
||||
}
|
||||
|
||||
sps->max_sub_layers = get_bits(gb, 3) + 1;
|
||||
if (sps->max_sub_layers > MAX_SUB_LAYERS) {
|
||||
av_log(s->avctx, AV_LOG_ERROR, "sps_max_sub_layers out of range: %d\n",
|
||||
|
Loading…
Reference in New Issue
Block a user