[Scummvm-cvs-logs] scummvm master -> ed4232cfeb3ab16ee6046f422f5827fa6c4992c8

clone2727 clone2727 at gmail.com
Tue May 22 00:59:45 CEST 2012


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
ed4232cfeb COMMON: Skip junk found at the end of QuickTime files


Commit: ed4232cfeb3ab16ee6046f422f5827fa6c4992c8
    https://github.com/scummvm/scummvm/commit/ed4232cfeb3ab16ee6046f422f5827fa6c4992c8
Author: Matthew Hoops (clone2727 at gmail.com)
Date: 2012-05-21T15:57:18-07:00

Commit Message:
COMMON: Skip junk found at the end of QuickTime files

Can occur in files and is ignored by QuickTime

Changed paths:
    common/quicktime.cpp



diff --git a/common/quicktime.cpp b/common/quicktime.cpp
index 5176f83..173d3c6 100644
--- a/common/quicktime.cpp
+++ b/common/quicktime.cpp
@@ -217,7 +217,11 @@ int QuickTimeParser::readDefault(Atom atom) {
 
 		a.size -= 8;
 
-		if (_parseTable[i].type == 0) { // skip leaf atoms data
+		if (a.size + (uint32)_fd->pos() > (uint32)_fd->size()) {
+			_fd->seek(_fd->size());
+			debug(0, "Skipping junk found at the end of the QuickTime file");
+			return 0;
+		} else if (_parseTable[i].type == 0) { // skip leaf atom data
 			debug(0, ">>> Skipped [%s]", tag2str(a.type));
 
 			_fd->seek(a.size, SEEK_CUR);






More information about the Scummvm-git-logs mailing list