[Scummvm-cvs-logs] SF.net SVN: scummvm:[48954] scummvm/trunk/engines/kyra
lordhoto at users.sourceforge.net
lordhoto at users.sourceforge.net
Wed May 5 19:53:30 CEST 2010
Revision: 48954
http://scummvm.svn.sourceforge.net/scummvm/?rev=48954&view=rev
Author: lordhoto
Date: 2010-05-05 17:53:30 +0000 (Wed, 05 May 2010)
Log Message:
-----------
Replace KYRA's strncpy and strncat usages by strlcpy/strlcat.
Modified Paths:
--------------
scummvm/trunk/engines/kyra/gui_lok.cpp
scummvm/trunk/engines/kyra/gui_lol.cpp
scummvm/trunk/engines/kyra/gui_v2.cpp
scummvm/trunk/engines/kyra/kyra_mr.cpp
scummvm/trunk/engines/kyra/script.cpp
scummvm/trunk/engines/kyra/script_tim.cpp
scummvm/trunk/engines/kyra/sound_digital.cpp
scummvm/trunk/engines/kyra/text_lok.cpp
Modified: scummvm/trunk/engines/kyra/gui_lok.cpp
===================================================================
--- scummvm/trunk/engines/kyra/gui_lok.cpp 2010-05-05 17:52:59 UTC (rev 48953)
+++ scummvm/trunk/engines/kyra/gui_lok.cpp 2010-05-05 17:53:30 UTC (rev 48954)
@@ -582,8 +582,7 @@
KyraEngine_v1::SaveHeader header;
for (int i = startSlot; i < num && uint(_savegameOffset + i) < _saveSlots.size(); i++) {
if ((in = _vm->openSaveForReading(_vm->getSavegameFilename(_saveSlots[i + _savegameOffset]), header))) {
- strncpy(savenames[i], header.description.c_str(), ARRAYSIZE(savenames[0]));
- savenames[i][34] = 0;
+ Common::strlcpy(savenames[i], header.description.c_str(), ARRAYSIZE(savenames[0]));
Util::convertISOToDOS(savenames[i]);
@@ -748,8 +747,7 @@
} else {
for (int i = 0; i < 5; i++) {
if (_menu[2].item[i].saveSlot == _vm->_gameToLoad) {
- strncpy(_savegameName, _menu[2].item[i].itemString, 31);
- _savegameName[30] = 0;
+ Common::strlcpy(_savegameName, _menu[2].item[i].itemString, 31);
break;
}
}
Modified: scummvm/trunk/engines/kyra/gui_lol.cpp
===================================================================
--- scummvm/trunk/engines/kyra/gui_lol.cpp 2010-05-05 17:52:59 UTC (rev 48953)
+++ scummvm/trunk/engines/kyra/gui_lol.cpp 2010-05-05 17:53:30 UTC (rev 48954)
@@ -2312,39 +2312,32 @@
if (_currentMenu == &_gameOptions) {
char *s = (char *)_vm->_tempBuffer5120;
- strncpy(s, _vm->getLangString(0x406f + _vm->_monsterDifficulty), 30);
- s[29] = 0;
+ Common::strlcpy(s, _vm->getLangString(0x406f + _vm->_monsterDifficulty), 30);
_currentMenu->item[_vm->gameFlags().isTalkie ? 0 : 2].itemString = s;
s += (strlen(s) + 1);
- strncpy(s, _vm->getLangString(_vm->_smoothScrollingEnabled ? 0x4068 : 0x4069), 30);
- s[29] = 0;
+ Common::strlcpy(s, _vm->getLangString(_vm->_smoothScrollingEnabled ? 0x4068 : 0x4069), 30);
_currentMenu->item[_vm->gameFlags().isTalkie ? 1 : 3].itemString = s;
s += (strlen(s) + 1);
- strncpy(s, _vm->getLangString(_vm->_floatingCursorsEnabled ? 0x4068 : 0x4069), 30);
- s[29] = 0;
+ Common::strlcpy(s, _vm->getLangString(_vm->_floatingCursorsEnabled ? 0x4068 : 0x4069), 30);
_currentMenu->item[_vm->gameFlags().isTalkie ? 2 : 4].itemString = s;
s += (strlen(s) + 1);
if (_vm->gameFlags().isTalkie) {
- strncpy(s, _vm->getLangString(0x42d6 + _vm->_lang), 30);
- s[29] = 0;
+ Common::strlcpy(s, _vm->getLangString(0x42d6 + _vm->_lang), 30);
_currentMenu->item[3].itemString = s;
s += (strlen(s) + 1);
- strncpy(s, _vm->getLangString(_vm->textEnabled() ? 0x4068 : 0x4069), 30);
- s[29] = 0;
+ Common::strlcpy(s, _vm->getLangString(_vm->textEnabled() ? 0x4068 : 0x4069), 30);
_currentMenu->item[4].itemString = s;
s += (strlen(s) + 1);
} else {
- strncpy(s, _vm->getLangString(_vm->_configMusic ? 0x4068 : 0x4069), 30);
- s[29] = 0;
+ Common::strlcpy(s, _vm->getLangString(_vm->_configMusic ? 0x4068 : 0x4069), 30);
_currentMenu->item[0].itemString = s;
s += (strlen(s) + 1);
- strncpy(s, _vm->getLangString(_vm->_configSounds ? 0x4068 : 0x4069), 30);
- s[29] = 0;
+ Common::strlcpy(s, _vm->getLangString(_vm->_configSounds ? 0x4068 : 0x4069), 30);
_currentMenu->item[1].itemString = s;
s += (strlen(s) + 1);
}
@@ -2582,8 +2575,7 @@
for (int i = startSlot; i < num && _savegameOffset + i - slotOffs < _savegameListSize; ++i) {
if (_savegameList[_saveSlots[i + _savegameOffset - slotOffs]]) {
- strncpy(s, _savegameList[_saveSlots[i + _savegameOffset - slotOffs]], 80);
- s[79] = 0;
+ Common::strlcpy(s, _savegameList[_saveSlots[i + _savegameOffset - slotOffs]], 80);
menu.item[i].itemString = s;
s += (strlen(s) + 1);
menu.item[i].saveSlot = _saveSlots[i + _savegameOffset - slotOffs];
@@ -2628,7 +2620,7 @@
in = _vm->openSaveForReading(_vm->getSavegameFilename(i), header);
if (in) {
_savegameList[i] = new char[header.description.size() + 1];
- strncpy(_savegameList[i], header.description.c_str(), header.description.size() + 1);
+ Common::strlcpy(_savegameList[i], header.description.c_str(), header.description.size() + 1);
Util::convertISOToDOS(_savegameList[i]);
delete in;
} else {
Modified: scummvm/trunk/engines/kyra/gui_v2.cpp
===================================================================
--- scummvm/trunk/engines/kyra/gui_v2.cpp 2010-05-05 17:52:59 UTC (rev 48953)
+++ scummvm/trunk/engines/kyra/gui_v2.cpp 2010-05-05 17:53:30 UTC (rev 48954)
@@ -457,8 +457,7 @@
for (int i = startSlot; i < num && uint(_savegameOffset + i) < _saveSlots.size(); ++i) {
if ((in = _vm->openSaveForReading(_vm->getSavegameFilename(_saveSlots[i + _savegameOffset]), header)) != 0) {
char *s = getTableString(menu.item[i].itemId);
- strncpy(s, header.description.c_str(), 80);
- s[79] = 0;
+ Common::strlcpy(s, header.description.c_str(), 80);
Util::convertISOToDOS(s);
menu.item[i].saveSlot = _saveSlots[i + _savegameOffset];
Modified: scummvm/trunk/engines/kyra/kyra_mr.cpp
===================================================================
--- scummvm/trunk/engines/kyra/kyra_mr.cpp 2010-05-05 17:52:59 UTC (rev 48953)
+++ scummvm/trunk/engines/kyra/kyra_mr.cpp 2010-05-05 17:53:30 UTC (rev 48954)
@@ -1297,18 +1297,12 @@
char *KyraEngine_MR::appendLanguage(char *buf, int lang, int bufSize) {
assert(lang < _languageExtensionSize);
- int size = strlen(buf) + strlen(_languageExtension[lang]);
-
- if (size > bufSize) {
+ const int size = Common::strlcat(buf, _languageExtension[lang], bufSize);
+ if (size >= bufSize) {
warning("buffer too small to append language extension");
return 0;
}
- char *temp = buf + strlen(buf);
- bufSize -= strlen(buf);
-
- strncat(temp, _languageExtension[lang], bufSize);
-
return buf;
}
@@ -1318,8 +1312,7 @@
uint32 size = 0;
char nBuf[32];
- strncpy(nBuf, file, 32);
- nBuf[31] = 0;
+ Common::strlcpy(nBuf, file, sizeof(nBuf));
buffer = _res->fileData(appendLanguage(nBuf, _lang, sizeof(nBuf)), &size);
return buffer ? size : 0 ;
Modified: scummvm/trunk/engines/kyra/script.cpp
===================================================================
--- scummvm/trunk/engines/kyra/script.cpp 2010-05-05 17:52:59 UTC (rev 48953)
+++ scummvm/trunk/engines/kyra/script.cpp 2010-05-05 17:53:30 UTC (rev 48954)
@@ -131,8 +131,7 @@
_scriptData->sysFuncs = opcodes;
- strncpy(_scriptData->filename, filename, 13);
- _scriptData->filename[12] = 0;
+ Common::strlcpy(_scriptData->filename, filename, 13);
_scriptData = 0;
_filename = 0;
Modified: scummvm/trunk/engines/kyra/script_tim.cpp
===================================================================
--- scummvm/trunk/engines/kyra/script_tim.cpp 2010-05-05 17:52:59 UTC (rev 48953)
+++ scummvm/trunk/engines/kyra/script_tim.cpp 2010-05-05 17:53:30 UTC (rev 48954)
@@ -174,8 +174,7 @@
for (int i = 0; i < num; ++i)
_tim->func[i].avtl = _tim->avtl + _tim->avtl[i];
- strncpy(_tim->filename, filename, 13);
- _tim->filename[12] = 0;
+ Common::strlcpy(_tim->filename, filename, 13);
_tim->isLoLOutro = (_vm->gameFlags().gameID == GI_LOL) && !scumm_stricmp(filename, "LOLFINAL.TIM");
_tim->lolCharacter = 0;
Modified: scummvm/trunk/engines/kyra/sound_digital.cpp
===================================================================
--- scummvm/trunk/engines/kyra/sound_digital.cpp 2010-05-05 17:52:59 UTC (rev 48953)
+++ scummvm/trunk/engines/kyra/sound_digital.cpp 2010-05-05 17:53:30 UTC (rev 48954)
@@ -458,8 +458,7 @@
return -1;
}
- strncpy(use->filename, filename, sizeof(use->filename));
- use->filename[sizeof(use->filename) - 1] = 0;
+ Common::strlcpy(use->filename, filename, sizeof(use->filename));
use->priority = priority;
Audio::SeekableAudioStream *audioStream = _supportedCodecs[usedCodec].streamFunc(stream, DisposeAfterUse::YES);
if (!audioStream) {
Modified: scummvm/trunk/engines/kyra/text_lok.cpp
===================================================================
--- scummvm/trunk/engines/kyra/text_lok.cpp 2010-05-05 17:52:59 UTC (rev 48953)
+++ scummvm/trunk/engines/kyra/text_lok.cpp 2010-05-05 17:53:30 UTC (rev 48954)
@@ -348,10 +348,9 @@
void KyraEngine_LoK::updateSentenceCommand(const char *str1, const char *str2, int color) {
char sentenceCommand[500];
- strncpy(sentenceCommand, str1, 500);
- sentenceCommand[499] = 0;
+ Common::strlcpy(sentenceCommand, str1, sizeof(sentenceCommand));
if (str2)
- strncat(sentenceCommand, str2, 500 - strlen(sentenceCommand));
+ Common::strlcat(sentenceCommand, str2, sizeof(sentenceCommand));
drawSentenceCommand(sentenceCommand, color);
_screen->updateScreen();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list