diff --git a/libavformat/asfdec_o.c b/libavformat/asfdec_o.c index 69c9a50b57..c0eb9566f7 100644 --- a/libavformat/asfdec_o.c +++ b/libavformat/asfdec_o.c @@ -1133,7 +1133,7 @@ static int asf_read_multiple_payload(AVFormatContext *s, AVPacket *pkt, } else avio_skip(pb, 4); // reading of media object size is already done asf_pkt->dts = avio_rl32(pb); // read presentation time - if (asf->rep_data_len && ((asf->rep_data_len - 8) > 0)) + if (asf->rep_data_len && (asf->rep_data_len >= 8)) avio_skip(pb, asf->rep_data_len - 8); // skip replicated data } pay_len = avio_rl16(pb); // payload length should be WORD @@ -1183,7 +1183,7 @@ static int asf_read_single_payload(AVFormatContext *s, AVPacket *pkt, } else avio_skip(pb, 4); // skip media object size asf_pkt->dts = avio_rl32(pb); // read presentation time - if ((asf->rep_data_len - 8) > 0) + if (asf->rep_data_len >= 8) avio_skip(pb, asf->rep_data_len - 8); // skip replicated data offset = avio_tell(pb);