From 154dffd04c5da3db282c4d2f17f6dd2c5dbf951d Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michaelni@gmx.at>
Date: Mon, 14 Jul 2008 22:55:07 +0000
Subject: [PATCH] Make flic probe check a few more things. fixes issue399

Originally committed as revision 14235 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavformat/flic.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/libavformat/flic.c b/libavformat/flic.c
index f22a5eec3e0..62ea94ef637 100644
--- a/libavformat/flic.c
+++ b/libavformat/flic.c
@@ -54,12 +54,25 @@ static int flic_probe(AVProbeData *p)
 {
     int magic_number;
 
+    if(p->buf_size < FLIC_HEADER_SIZE)
+        return 0;
+
     magic_number = AV_RL16(&p->buf[4]);
     if ((magic_number != FLIC_FILE_MAGIC_1) &&
         (magic_number != FLIC_FILE_MAGIC_2) &&
         (magic_number != FLIC_FILE_MAGIC_3))
         return 0;
 
+    if(AV_RL16(&p->buf[0x10]) != FLIC_CHUNK_MAGIC_1){
+        if(AV_RL32(&p->buf[0x10]) > 2000)
+            return 0;
+    }
+
+    if(   AV_RL16(&p->buf[0x08]) > 4096
+       || AV_RL16(&p->buf[0x0A]) > 4096)
+        return 0;
+
+
     return AVPROBE_SCORE_MAX;
 }
 
-- 
GitLab