[Scummvm-cvs-logs] scummvm master -> 560812bd5e46240c3a9ec074a11ba9169e95ce19
digitall
dgturner at iee.org
Sun Jun 8 04:08:43 CEST 2014
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:
560812bd5e TSAGE: R2R - Error out on possible out of range accesses.
Commit: 560812bd5e46240c3a9ec074a11ba9169e95ce19
https://github.com/scummvm/scummvm/commit/560812bd5e46240c3a9ec074a11ba9169e95ce19
Author: D G Turner (digitall at scummvm.org)
Date: 2014-06-08T03:12:07+01:00
Commit Message:
TSAGE: R2R - Error out on possible out of range accesses.
This will fix the warnings reported as bug #6621.
Changed paths:
engines/tsage/ringworld2/ringworld2_scenes1.cpp
diff --git a/engines/tsage/ringworld2/ringworld2_scenes1.cpp b/engines/tsage/ringworld2/ringworld2_scenes1.cpp
index 110c3ff..b36b185 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes1.cpp
+++ b/engines/tsage/ringworld2/ringworld2_scenes1.cpp
@@ -4931,6 +4931,9 @@ int Scene1337::getPreventionCardId(int cardId) {
}
bool Scene1337::isAttackPossible(int victimId, int cardId) {
+ if (victimId < 0 || victimId > ARRAYSIZE(_gameBoardSide))
+ error("Scene1337::isAttackPossible() victimId:%d out of range 0 to %d", victimId, ARRAYSIZE(_gameBoardSide));
+
for (int i = 0; i <= 7; i++) {
if (_gameBoardSide[victimId]._outpostStation[i]._cardId != 0) {
if (getPreventionCardId(cardId) == _gameBoardSide[victimId]._outpostStation[i]._cardId)
@@ -5978,11 +5981,18 @@ void Scene1337::handlePlayer1() {
for (int j = 0; j <= 3; j++) {
//CHECKME: tmpVal or rndVal?
+ // FIXME: This is probably meant to be rndVal, but not clear...
+ if (tmpVal < 0 || tmpVal > ARRAYSIZE(_gameBoardSide))
+ error("Scene1337::handlePlayer1() tmpVal:%d out of range 0 to %d", tmpVal, ARRAYSIZE(_gameBoardSide));
+
if (tmpVal != 1) {
if ((_gameBoardSide[tmpVal]._delayCard._cardId == 0) && isAttackPossible(tmpVal, _gameBoardSide[1]._handCard[i]._cardId))
count = tmpVal;
}
+ if (count < 0 || count > ARRAYSIZE(_gameBoardSide))
+ error("Scene1337::handlePlayer1() count:%d out of range 0 to %d", count, ARRAYSIZE(_gameBoardSide));
+
if (count != -1) {
playDelayCard(&_gameBoardSide[1]._handCard[i], &_gameBoardSide[count]._delayCard);
return;
More information about the Scummvm-git-logs
mailing list