tools/qt-faststart: Fix unintended sign extension of atom_size
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 2 Jun 2013 21:07:06 +0000 (23:07 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 2 Jun 2013 21:10:31 +0000 (23:10 +0200)
Fixes CID733810

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tools/qt-faststart.c

index c9aa6e8..489c1ab 100644 (file)
@@ -229,7 +229,7 @@ int main(int argc, char *argv[])
         atom_type = BE_32(&moov_atom[i]);
         if (atom_type == STCO_ATOM) {
             printf(" patching stco atom...\n");
-            atom_size = BE_32(&moov_atom[i - 4]);
+            atom_size = (uint32_t)BE_32(&moov_atom[i - 4]);
             if (i + atom_size - 4 > moov_atom_size) {
                 printf(" bad atom size\n");
                 goto error_out;
@@ -250,7 +250,7 @@ int main(int argc, char *argv[])
             i += atom_size - 4;
         } else if (atom_type == CO64_ATOM) {
             printf(" patching co64 atom...\n");
-            atom_size = BE_32(&moov_atom[i - 4]);
+            atom_size = (uint32_t)BE_32(&moov_atom[i - 4]);
             if (i + atom_size - 4 > moov_atom_size) {
                 printf(" bad atom size\n");
                 goto error_out;