]> git.sesse.net Git - ffmpeg/commitdiff
avcodec/hcom: check that index into array is valid
authorPaul B Mahol <onemda@gmail.com>
Sun, 3 Mar 2019 19:21:20 +0000 (20:21 +0100)
committerPaul B Mahol <onemda@gmail.com>
Sun, 3 Mar 2019 19:21:20 +0000 (20:21 +0100)
libavcodec/hcom.c

index 8753486c02f5d04266abe7596c25dac3022e523e..bce9e80aa52b3fcdd036e6ef65807141a3f02a53 100644 (file)
@@ -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;