avformat/rmdec: Check for overflow in ff_rm_read_mdpr_codecdata()
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 5 Dec 2014 23:18:29 +0000 (00:18 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 5 Dec 2014 23:49:23 +0000 (00:49 +0100)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/rmdec.c

index e267b01..299c742 100644 (file)
@@ -414,7 +414,11 @@ int ff_rm_read_mdpr_codecdata(AVFormatContext *s, AVIOContext *pb,
 skip:
     /* skip codec info */
     size = avio_tell(pb) - codec_pos;
-    avio_skip(pb, codec_data_size - size);
+    if (codec_data_size >= size) {
+        avio_skip(pb, codec_data_size - size);
+    } else {
+        av_log(s, AV_LOG_WARNING, "codec_data_size %u < size %d\n", codec_data_size, size);
+    }
 
     return 0;
 }