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

dreammaster dreammaster at scummvm.org
Sat Aug 22 16:46:07 CEST 2015


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:
b21991098c SHERLOCK: RT: Workaround for occasional crash changing char sequence


Commit: b21991098c28e002aaa5a91d8c3fafede2ece18d
    https://github.com/scummvm/scummvm/commit/b21991098c28e002aaa5a91d8c3fafede2ece18d
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2015-08-22T10:45:38-04:00

Commit Message:
SHERLOCK: RT: Workaround for occasional crash changing char sequence

Changed paths:
    engines/sherlock/tattoo/tattoo_people.cpp



diff --git a/engines/sherlock/tattoo/tattoo_people.cpp b/engines/sherlock/tattoo/tattoo_people.cpp
index a208949..f692035 100644
--- a/engines/sherlock/tattoo/tattoo_people.cpp
+++ b/engines/sherlock/tattoo/tattoo_people.cpp
@@ -962,6 +962,11 @@ void TattooPerson::checkWalkGraphics() {
 		_seqTo = _seqCounter = _seqCounter2 = _seqStack = _startSeq = 0;
 		_sequences = &_walkSequences[_sequenceNumber]._sequences[0];
 		_seqSize = _walkSequences[_sequenceNumber]._sequences.size();
+
+		// WORKAROUND: Occassionally when switching to a new walk sequence the existing frame number may be outside
+		// the allowed range for the new sequence. In such cases, reset the frame number
+		if (_frameNumber < 0 || _frameNumber >= (int)_seqSize || _walkSequences[_sequenceNumber][_frameNumber] == 0)
+			_frameNumber = 0;
 	}
 
 	setImageFrame();






More information about the Scummvm-git-logs mailing list