diff options
author | Strangerke | 2013-10-25 08:10:38 +0200 |
---|---|---|
committer | Strangerke | 2013-10-25 08:10:38 +0200 |
commit | 7dc1ea9ada597146b96ee1bf4c26a105767d30e1 (patch) | |
tree | bbe1e6f776026a671b4687ba16cd354cda1109e1 /engines/avalanche/dialogs.cpp | |
parent | 8677f9aa3c689364fd1ca546520e07e65d742d71 (diff) | |
download | scummvm-rg350-7dc1ea9ada597146b96ee1bf4c26a105767d30e1.tar.gz scummvm-rg350-7dc1ea9ada597146b96ee1bf4c26a105767d30e1.tar.bz2 scummvm-rg350-7dc1ea9ada597146b96ee1bf4c26a105767d30e1.zip |
AVALANCHE: Fix out of bounds reads (CID 1109653-1109655)
Diffstat (limited to 'engines/avalanche/dialogs.cpp')
-rw-r--r-- | engines/avalanche/dialogs.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/engines/avalanche/dialogs.cpp b/engines/avalanche/dialogs.cpp index 8770e08d60..66d5be29b9 100644 --- a/engines/avalanche/dialogs.cpp +++ b/engines/avalanche/dialogs.cpp @@ -689,6 +689,7 @@ void Dialogs::displayText(Common::String text) { if (_param == 0) setBubbleStateNatural(); else if ((1 <= _param) && (_param <= 9)) { + assert(_param - 1 < _vm->_animation->kSpriteNumbMax); AnimationType *spr = _vm->_animation->_sprites[_param - 1]; if ((_param > _vm->_animation->kSpriteNumbMax) || (!spr->_quick)) { // Not valid. _vm->errorLed(); @@ -699,6 +700,7 @@ void Dialogs::displayText(Common::String text) { // Quasi-peds. (This routine performs the same // thing with QPs as triptype.chatter does with the // sprites.) + assert(_param - 10 < 16); PedType *quasiPed = &_vm->_peds[kQuasipeds[_param - 10]._whichPed]; _talkX = quasiPed->_x; _talkY = quasiPed->_y; // Position. |