diff options
author | Strangerke | 2014-06-06 23:18:01 +0200 |
---|---|---|
committer | Strangerke | 2014-06-06 23:18:01 +0200 |
commit | 3dcfa95b44ec47c6eff1de03f946e2ac20bed29e (patch) | |
tree | 89118fd00f572e59656468a89682bc77e174ec13 /engines | |
parent | 8cb50b52e0e6614343419ca75803c8a18cf085df (diff) | |
parent | 113a2824c41283facd7ae6c24be3f74213207bc9 (diff) | |
download | scummvm-rg350-3dcfa95b44ec47c6eff1de03f946e2ac20bed29e.tar.gz scummvm-rg350-3dcfa95b44ec47c6eff1de03f946e2ac20bed29e.tar.bz2 scummvm-rg350-3dcfa95b44ec47c6eff1de03f946e2ac20bed29e.zip |
Merge branch 'master' of github.com:scummvm/scummvm
Diffstat (limited to 'engines')
-rw-r--r-- | engines/fullpipe/modal.cpp | 3 | ||||
-rw-r--r-- | engines/fullpipe/motion.cpp | 7 | ||||
-rw-r--r-- | engines/fullpipe/scenes.cpp | 5 | ||||
-rw-r--r-- | engines/fullpipe/scenes/scene16.cpp | 2 | ||||
-rw-r--r-- | engines/fullpipe/statics.cpp | 7 |
5 files changed, 17 insertions, 7 deletions
diff --git a/engines/fullpipe/modal.cpp b/engines/fullpipe/modal.cpp index 8981cdb8e6..3dbbeb78c4 100644 --- a/engines/fullpipe/modal.cpp +++ b/engines/fullpipe/modal.cpp @@ -1456,6 +1456,9 @@ ModalSaveGame::ModalSaveGame() { _cancelL = 0; _emptyD = 0; _emptyL = 0; + _fullD = 0; + _fullL = 0; + _menuScene = 0; _queryRes = -1; _rect = g_fp->_sceneRect; _queryDlg = 0; diff --git a/engines/fullpipe/motion.cpp b/engines/fullpipe/motion.cpp index caac6d9e5a..adfc2f7326 100644 --- a/engines/fullpipe/motion.cpp +++ b/engines/fullpipe/motion.cpp @@ -554,8 +554,7 @@ MessageQueue *MctlLadder::doWalkTo(StaticANIObject *ani, int xpos, int ypos, int mq->transferExCommands(newmq); - if (newmq) - delete newmq; + delete newmq; ani->setPicAniInfo(&picinfo); @@ -1136,6 +1135,8 @@ MessageQueue *MovGraph::sub1(StaticANIObject *ani, int x, int y, int stid, int x _items[idx]->movarr._link = 0; res = fillMGMinfo(_items[idx]->ani, &_items[idx]->movarr, stid2); + + break; } } @@ -1517,6 +1518,8 @@ Common::Array<MovItem *> *MovGraph::calcMovItems(MovArr *movarr1, MovArr *movarr genMovItem(r, tempObList2[i], movarr1, movarr2); + res->push_back(r); + delete tempObList2[i]; } diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp index b346bf3a17..13c653ad09 100644 --- a/engines/fullpipe/scenes.cpp +++ b/engines/fullpipe/scenes.cpp @@ -1455,6 +1455,9 @@ void BallChain::init(Ball **ball) { Ball *BallChain::sub04(Ball *ballP, Ball *ballN) { if (!pTail) { + if (!cPlexLen) + error("BallChain::sub04: cPlexLen is 0"); + cPlex = (byte *)calloc(cPlexLen, sizeof(Ball)); Ball *runPtr = (Ball *)&cPlex[(cPlexLen - 1) * sizeof(Ball)]; @@ -1463,7 +1466,7 @@ Ball *BallChain::sub04(Ball *ballP, Ball *ballN) { runPtr->p0 = pTail; pTail = runPtr; - runPtr -= sizeof(Ball); + runPtr--; } } diff --git a/engines/fullpipe/scenes/scene16.cpp b/engines/fullpipe/scenes/scene16.cpp index 9ed355fdd9..ed3c51a6c2 100644 --- a/engines/fullpipe/scenes/scene16.cpp +++ b/engines/fullpipe/scenes/scene16.cpp @@ -182,7 +182,7 @@ void sceneHandler16_fillMug() { mq = new MessageQueue(g_fp->_currentScene->getMessageQueueById(QU_SC16_BOYOUT), 0, 1); mq->replaceKeyCode(-1, g_vars->scene16_walkingBoy->_okeyCode); - if (mq->chain(g_vars->scene16_walkingBoy) || !mq) + if (!mq || mq->chain(g_vars->scene16_walkingBoy)) return; } else { if (!g_vars->scene16_walkingGirl) diff --git a/engines/fullpipe/statics.cpp b/engines/fullpipe/statics.cpp index 5d7de050f0..ec8514143e 100644 --- a/engines/fullpipe/statics.cpp +++ b/engines/fullpipe/statics.cpp @@ -979,11 +979,12 @@ void StaticANIObject::stopAnim_maybe() { _ox += point.x; _oy += point.y; } + } else { + _statics = _movement->_staticsObj2; } - } - - if (_movement->_currDynamicPhaseIndex || !(_flags & 0x40)) + } else { _statics = _movement->_staticsObj2; + } _statics->getSomeXY(point); |