changeset 2660:022174d849d5 libavformat

fix issue 225, instead of stoping when wrong atom size is found, limit atom size to what is left, assuming container atom has correct size.. cricket4.3g2 has incorrect moov atom size which indicates that file size should be 2 bytes bigger than it is and quicktime reads it correctly though.
author bcoudurier
date Mon, 22 Oct 2007 14:36:14 +0000
parents 883daa175be1
children bed166d88f63
files mov.c
diffstat 1 files changed, 3 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mov.c	Mon Oct 22 06:01:38 2007 +0000
+++ b/mov.c	Mon Oct 22 14:36:14 2007 +0000
@@ -179,8 +179,10 @@
                 break;
         }
         a.size -= 8;
-        if(a.size < 0 || a.size > atom.size - total_size)
+        if(a.size < 0)
             break;
+        if (a.size > atom.size - total_size)
+            a.size = atom.size - total_size;
 
         for (i = 0; c->parse_table[i].type != 0L
              && c->parse_table[i].type != a.type; i++)