summaryrefslogtreecommitdiffstats
path: root/libavcodec/hcom.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/hcom.c')
-rw-r--r--libavcodec/hcom.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/hcom.c b/libavcodec/hcom.c
index 8753486..bce9e80 100644
--- a/libavcodec/hcom.c
+++ b/libavcodec/hcom.c
@@ -63,6 +63,10 @@ static av_cold int hcom_init(AVCodecContext *avctx)
for (int i = 0; i < s->dict_entries; i++) {
s->dict[i].l = AV_RB16(avctx->extradata + 6 + 4 * i);
s->dict[i].r = AV_RB16(avctx->extradata + 6 + 4 * i + 2);
+ if (s->dict[i].l >= 0 &&
+ (s->dict[i].l >= s->dict_entries ||
+ s->dict[i].r >= s->dict_entries))
+ return AVERROR_INVALIDDATA;
}
avctx->sample_fmt = AV_SAMPLE_FMT_U8;
OpenPOWER on IntegriCloud