Check buffer size for idcin check, otherwise false positives are too likely for
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Mon, 14 Sep 2009 15:44:05 +0000 (15:44 +0000)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Mon, 14 Sep 2009 15:44:05 +0000 (15:44 +0000)
small probe buffer sizes due to 0-padding (see probetest results).

Originally committed as revision 19838 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/idcin.c

index 0a5f825..8e9dfb5 100644 (file)
@@ -105,6 +105,11 @@ static int idcin_probe(AVProbeData *p)
      * audio channels: 0 for no audio, or 1 or 2
      */
 
      * audio channels: 0 for no audio, or 1 or 2
      */
 
+    /* check we have enough data to do all checks, otherwise the
+       0-padding may cause a wrong recognition */
+    if (p->buf_size < 20)
+        return 0;
+
     /* check the video width */
     number = AV_RL32(&p->buf[0]);
     if ((number == 0) || (number > 1024))
     /* check the video width */
     number = AV_RL32(&p->buf[0]);
     if ((number == 0) || (number > 1024))