diff options
Diffstat (limited to 'engines/agos/string.cpp')
-rw-r--r-- | engines/agos/string.cpp | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/engines/agos/string.cpp b/engines/agos/string.cpp index 62f06ab12c..40506e4874 100644 --- a/engines/agos/string.cpp +++ b/engines/agos/string.cpp @@ -297,8 +297,6 @@ uint AGOSEngine::loadTextFile_gme(const char *filename, byte *dst) { void AGOSEngine::loadTextIntoMem(uint16 stringId) { byte *p; - char filename[30]; - int i; uint16 baseMin = 0x8000, baseMax, size; _tablesHeapPtr = _tablesheapPtrNew; @@ -308,13 +306,13 @@ void AGOSEngine::loadTextIntoMem(uint16 stringId) { // get filename while (*p) { - for (i = 0; *p; p++, i++) - filename[i] = *p; - filename[i] = 0; + Common::String filename; + while (*p) + filename += *p++; p++; if (getPlatform() == Common::kPlatformAcorn) { - sprintf(filename, "%s.DAT", filename); + filename += ".DAT"; } baseMax = (p[0] * 256) | p[1]; @@ -330,7 +328,7 @@ void AGOSEngine::loadTextIntoMem(uint16 stringId) { _tablesHeapPtr += size; _tablesHeapCurPos += size; - size = loadTextFile(filename, _tablesHeapPtr); + size = loadTextFile(filename.c_str(), _tablesHeapPtr); setupLocalStringTable(_tablesHeapPtr, baseMax - baseMin + 1); |