avformat/utils: if the id3 tag is too large for data after it to become available...
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 12 May 2014 18:42:37 +0000 (20:42 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 12 May 2014 18:45:36 +0000 (20:45 +0200)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/utils.c

index ce5dbdf..d84d605 100644 (file)
@@ -264,8 +264,11 @@ AVInputFormat *av_probe_input_format3(AVProbeData *pd, int is_opened,
         score = 0;
         if (fmt1->read_probe) {
             score = fmt1->read_probe(&lpd);
-            if (fmt1->extensions && av_match_ext(lpd.filename, fmt1->extensions))
-                score = FFMAX(score, nodat ? AVPROBE_SCORE_EXTENSION / 2 - 1 : 1);
+            if (fmt1->extensions && av_match_ext(lpd.filename, fmt1->extensions)) {
+                if      (nodat == 0) score = FFMAX(score, 1);
+                else if (nodat == 1) score = FFMAX(score, AVPROBE_SCORE_EXTENSION / 2 - 1);
+                else                 score = FFMAX(score, AVPROBE_SCORE_EXTENSION);
+            }
         } else if (fmt1->extensions) {
             if (av_match_ext(lpd.filename, fmt1->extensions))
                 score = AVPROBE_SCORE_EXTENSION;