[FFmpeg-devel] [PATCH] wv: make probing more robust

Paul B Mahol onemda at gmail.com
Tue May 14 23:06:15 CEST 2013


Signed-off-by: Paul B Mahol <onemda at gmail.com>
---
 libavformat/wv.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/libavformat/wv.c b/libavformat/wv.c
index 97a6c1f..ad6e8ac 100644
--- a/libavformat/wv.c
+++ b/libavformat/wv.c
@@ -73,8 +73,11 @@ static int wv_probe(AVProbeData *p)
     /* check file header */
     if (p->buf_size <= 32)
         return 0;
-    if (p->buf[0] == 'w' && p->buf[1] == 'v' &&
-        p->buf[2] == 'p' && p->buf[3] == 'k')
+    if (AV_RL32(&p->buf[0]) == MKTAG('w', 'v', 'p', 'k') &&
+        AV_RL32(&p->buf[4]) >= 24 &&
+        AV_RL32(&p->buf[4]) <= WV_BLOCK_LIMIT &&
+        AV_RL16(&p->buf[8]) >= 0x402 &&
+        AV_RL16(&p->buf[8]) <= 0x410)
         return AVPROBE_SCORE_MAX;
     else
         return 0;
-- 
1.7.11.2



More information about the ffmpeg-devel mailing list