diff options
Diffstat (limited to 'libavformat/vocdec.c')
-rw-r--r-- | libavformat/vocdec.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libavformat/vocdec.c b/libavformat/vocdec.c index 94fbd7b9bf..246dbd91b4 100644 --- a/libavformat/vocdec.c +++ b/libavformat/vocdec.c @@ -76,6 +76,11 @@ voc_get_packet(AVFormatContext *s, AVPacket *pkt, AVStream *st, int max_size) if (type == VOC_TYPE_EOF) return AVERROR(EIO); voc->remaining_size = get_le24(pb); + if (!voc->remaining_size) { + if (url_is_streamed(s->pb)) + return AVERROR(EIO); + voc->remaining_size = url_fsize(pb) - url_ftell(pb); + } max_size -= 4; switch (type) { |