aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorDavid Turner2011-01-18 00:22:47 +0000
committerDavid Turner2011-01-18 00:22:47 +0000
commitf042e398eaea1bc15f76fd1739f98b3245c33cd0 (patch)
treece2c5ffe3fa6324176ae9f0623abcf02d6507a3e /engines
parentc6750a7a650f668627ab5e86352f66aef6257f7e (diff)
downloadscummvm-rg350-f042e398eaea1bc15f76fd1739f98b3245c33cd0.tar.gz
scummvm-rg350-f042e398eaea1bc15f76fd1739f98b3245c33cd0.tar.bz2
scummvm-rg350-f042e398eaea1bc15f76fd1739f98b3245c33cd0.zip
PARALLACTION: Fix Big Red Adventure Walking To Stop On Path Build Failure.
Walking now works correctly, with no valgrind issues, lockups or assertions. svn-id: r55281
Diffstat (limited to 'engines')
-rw-r--r--engines/parallaction/walk.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/engines/parallaction/walk.cpp b/engines/parallaction/walk.cpp
index 40df28504f..be69614be4 100644
--- a/engines/parallaction/walk.cpp
+++ b/engines/parallaction/walk.cpp
@@ -367,7 +367,6 @@ PathWalker_NS::PathWalker_NS() : _direction(WALK_DOWN), _step(0) {
}
bool PathWalker_BR::directPathExists(const Common::Point &from, const Common::Point &to) {
-
Common::Point copy(from);
Common::Point p(copy);
@@ -450,7 +449,7 @@ void PathWalker_BR::buildPath(State &s, uint16 x, uint16 y) {
if (z1->u._pathLists[id].empty()) {
s._walkPath.clear();
debugC(3, kDebugWalk, "buildPath: no path found");
- // If no path, trigger finalise and stop of walking...
+ // If no path, trigger finalize and stop of walking...
s._stillWalkingTowardsNode = false;
return;
}
@@ -578,7 +577,8 @@ void PathWalker_BR::doWalk(State &s) {
}
if (!s._stillWalkingTowardsNode) {
- s._walkPath.erase(s._walkPath.begin());
+ if (!s._walkPath.empty())
+ s._walkPath.erase(s._walkPath.begin());
if (s._walkPath.empty()) {
finalizeWalk(s);