summaryrefslogtreecommitdiff
path: root/libavformat
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-10-02 20:05:06 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2015-10-02 20:18:53 +0200
commit14f6c4356b4a5d649858c245eb3ffd503d5abe72 (patch)
treefb1d493be0677ae8b352471d033f811c469188ce /libavformat
parent16aac9a359199f1be9963b476e5f75908a6018aa (diff)
avformat/flvdec: accept sizes if they are off by 11
This error was produced by rtmproto.c, it is possibly such streams where dumped, this commit is needed to support them Fixes: z0e.flv Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/flvdec.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c
index a59c07d34a..8f21fc13fb 100644
--- a/libavformat/flvdec.c
+++ b/libavformat/flvdec.c
@@ -1138,7 +1138,9 @@ retry_duration:
leave:
last = avio_rb32(s->pb);
- if (last != orig_size + 11 && !flv->broken_sizes) {
+ if (last != orig_size + 11 &&
+ (last != orig_size || !last) &&
+ !flv->broken_sizes) {
av_log(s, AV_LOG_ERROR, "Packet mismatch %d %d\n", last, orig_size + 11);
avio_seek(s->pb, pos + 1, SEEK_SET);
ret = resync(s);