[Scummvm-cvs-logs] SF.net SVN: scummvm: [31797] scummvm/trunk/engines/gob

drmccoy at users.sourceforge.net drmccoy at users.sourceforge.net
Thu May 1 20:38:36 CEST 2008


Revision: 31797
          http://scummvm.svn.sourceforge.net/scummvm/?rev=31797&view=rev
Author:   drmccoy
Date:     2008-05-01 11:38:36 -0700 (Thu, 01 May 2008)

Log Message:
-----------
Fixing object video related segfault

Modified Paths:
--------------
    scummvm/trunk/engines/gob/scenery.cpp
    scummvm/trunk/engines/gob/videoplayer.cpp

Modified: scummvm/trunk/engines/gob/scenery.cpp
===================================================================
--- scummvm/trunk/engines/gob/scenery.cpp	2008-05-01 11:36:00 UTC (rev 31796)
+++ scummvm/trunk/engines/gob/scenery.cpp	2008-05-01 18:38:36 UTC (rev 31797)
@@ -625,6 +625,9 @@
 			return;
 		}
 
+		if (frame >= _vm->_vidPlayer->getFramesCount(obj.videoSlot - 1))
+			frame = _vm->_vidPlayer->getFramesCount(obj.videoSlot - 1) - 1;
+
 		// Seek to frame
 		while (_vm->_vidPlayer->getCurrentFrame(obj.videoSlot - 1) <= frame)
 			_vm->_vidPlayer->slotPlay(obj.videoSlot - 1);

Modified: scummvm/trunk/engines/gob/videoplayer.cpp
===================================================================
--- scummvm/trunk/engines/gob/videoplayer.cpp	2008-05-01 11:36:00 UTC (rev 31796)
+++ scummvm/trunk/engines/gob/videoplayer.cpp	2008-05-01 18:38:36 UTC (rev 31797)
@@ -352,6 +352,9 @@
 	if (frame < 0)
 		frame = video.getCurrentFrame();
 
+	if (frame >= video.getFramesCount())
+		return;
+
 	if (video.getCurrentFrame() != frame)
 		video.seekFrame(frame);
 


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list