diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c index e267b01a1a..299c74237c 100644 --- a/libavformat/rmdec.c +++ b/libavformat/rmdec.c @@ -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; }