Merge commit '0f310a6f333b016d336674d086045e8473fdf918'
authorMichael Niedermayer <michaelni@gmx.at>
Thu, 19 Sep 2013 08:38:40 +0000 (10:38 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Thu, 19 Sep 2013 08:38:40 +0000 (10:38 +0200)
* commit '0f310a6f333b016d336674d086045e8473fdf918':
  rmdec: Validate the fps value

Conflicts:
libavformat/rmdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/rmdec.c

index 91f4241..278fc37 100644 (file)
@@ -377,11 +377,16 @@ ff_rm_read_mdpr_codecdata (AVFormatContext *s, AVIOContext *pb,
         if ((ret = rm_read_extradata(pb, st->codec, codec_data_size - (avio_tell(pb) - codec_pos))) < 0)
             return ret;
 
-        av_reduce(&st->avg_frame_rate.den, &st->avg_frame_rate.num,
-                  0x10000, fps, (1 << 30) - 1);
+        if (fps > 0) {
+            av_reduce(&st->avg_frame_rate.den, &st->avg_frame_rate.num,
+                      0x10000, fps, (1 << 30) - 1);
 #if FF_API_R_FRAME_RATE
-        st->r_frame_rate = st->avg_frame_rate;
+            st->r_frame_rate = st->avg_frame_rate;
 #endif
+        } else if (s->error_recognition & AV_EF_EXPLODE) {
+            av_log(s, AV_LOG_ERROR, "Invalid framerate\n");
+            return AVERROR_INVALIDDATA;
+        }
     }
 
 skip: