aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/game_v2.cpp
diff options
context:
space:
mode:
authorSven Hesse2007-03-30 17:52:31 +0000
committerSven Hesse2007-03-30 17:52:31 +0000
commitd65e05841a324d2ec898a3662f40e193fbc77e47 (patch)
tree55d85a458c0559e6c3d3b060dd54f7385562867a /engines/gob/game_v2.cpp
parent33c6a6f46057748a30a143c9eb5dc1f86c813e32 (diff)
downloadscummvm-rg350-d65e05841a324d2ec898a3662f40e193fbc77e47.tar.gz
scummvm-rg350-d65e05841a324d2ec898a3662f40e193fbc77e47.tar.bz2
scummvm-rg350-d65e05841a324d2ec898a3662f40e193fbc77e47.zip
- Fixed the IMD playing within mults, the non-interactive Gob3 demo should work better now
- Replaced strcpy with strncpy where appropriate - Added detection entries for other languages of the multilingual Gob3 CD; bug #1691230 svn-id: r26327
Diffstat (limited to 'engines/gob/game_v2.cpp')
-rw-r--r--engines/gob/game_v2.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/engines/gob/game_v2.cpp b/engines/gob/game_v2.cpp
index e9d10fe8b1..8eb9258a31 100644
--- a/engines/gob/game_v2.cpp
+++ b/engines/gob/game_v2.cpp
@@ -1052,7 +1052,7 @@ void Game_v2::collisionsBlock(void) {
if ((_collisionAreas[i].flags & 0x0F) > 8) {
char *ptr;
- strcpy(_tempStr, GET_VARO_STR(_collisionAreas[i].key));
+ strncpy0(_tempStr, GET_VARO_STR(_collisionAreas[i].key), 255);
while ((ptr = strchr(_tempStr, ' ')))
_vm->_util->cutFromStr(_tempStr, (ptr - _tempStr), 1);
if (_vm->_language == 2)
@@ -1065,14 +1065,14 @@ void Game_v2::collisionsBlock(void) {
((_collisionAreas[i].flags & 0x0F) <= 8)) {
str = descArray[var_24].ptr;
- strcpy(_tempStr, GET_VARO_STR(_collisionAreas[i].key));
+ strncpy0(_tempStr, GET_VARO_STR(_collisionAreas[i].key), 255);
if ((_collisionAreas[i].flags & 0x0F) < 7)
_vm->_util->prepareStr(_tempStr);
int16 pos = 0;
do {
- strcpy(_collStr, str);
+ strncpy0(_collStr, str, 255);
pos += strlen(str) + 1;
str += strlen(str) + 1;
@@ -1155,7 +1155,7 @@ int16 Game_v2::multiEdit(int16 time, int16 index, int16 *pCurPos,
if ((collArea->flags & 0x0F) > 10)
continue;
- strcpy(_tempStr, GET_VARO_STR(collArea->key));
+ strncpy0(_tempStr, GET_VARO_STR(collArea->key), 255);
_vm->_draw->_destSpriteX = collArea->left;
_vm->_draw->_destSpriteY = collArea->top;
@@ -1355,10 +1355,10 @@ int16 Game_v2::inputArea(int16 xPos, int16 yPos, int16 width, int16 height,
editSize = width / pFont->itemWidth;
while (1) {
- strcpy(_tempStr, str);
+ strncpy0(_tempStr, str, 254);
strcat(_tempStr, " ");
if (strlen(_tempStr) > editSize)
- strcpy(_tempStr, str);
+ strncpy0(_tempStr, str, 255);
fontExtraBak = _vm->_draw->_fonts[fontIndex]->extraData;
needAdjust = _vm->_draw->_needAdjust;