summaryrefslogtreecommitdiff
path: root/libavformat/rm.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/rm.c')
-rw-r--r--libavformat/rm.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/libavformat/rm.c b/libavformat/rm.c
index f0529d0438..e6779a69a0 100644
--- a/libavformat/rm.c
+++ b/libavformat/rm.c
@@ -811,7 +811,7 @@ static int rm_read_packet(AVFormatContext *s, AVPacket *pkt)
st = s->streams[0];
} else {
int seq=1;
-
+resync:
len=sync(s, &timestamp, &flags, &i, &pos);
if(len<0)
return AVERROR_IO;
@@ -841,6 +841,11 @@ static int rm_read_packet(AVFormatContext *s, AVPacket *pkt)
len=len2;
rm->remaining_len-= len;
}
+
+ if(st->discard){
+ url_fskip(pb, len);
+ goto resync;
+ }
av_new_packet(pkt, len);
pkt->stream_index = i;