From fef2da6a22f200299db986fc5c2271418e816ba6 Mon Sep 17 00:00:00 2001 From: Mihnea Balta Date: Tue, 6 Dec 2011 09:29:47 +0200 Subject: [PATCH] movdec: Fix bad computed size for atoms with size 0 in MOV files The computed size doesn't contain the header size because it's already skipped by incrementing total_size, but then it's skipped again in the last line. The atom comes out 8 bytes short and the function mov_read_chan() aborts the whole parsing process. I think the computed size should be atom.size - total_size + 8. Signed-off-by: Michael Niedermayer --- libavformat/mov.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index eb315923085..d96ab0488db 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -323,7 +323,7 @@ static int mov_read_default(MOVContext *c, AVIOContext *pb, MOVAtom atom) total_size += 8; } if (a.size == 0) { - a.size = atom.size - total_size; + a.size = atom.size - total_size + 8; if (a.size <= 8) break; } -- 2.39.5