aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorTorbjörn Andersson2010-01-03 20:42:51 +0000
committerTorbjörn Andersson2010-01-03 20:42:51 +0000
commitf15db40927443953aeb880fac1d4093301004e03 (patch)
treebedb26b688c8324722c1c6ad4d8e1c9ea3f77045 /engines
parenteeb3502fa43856a6e03424b9e24700485a7fb852 (diff)
downloadscummvm-rg350-f15db40927443953aeb880fac1d4093301004e03.tar.gz
scummvm-rg350-f15db40927443953aeb880fac1d4093301004e03.tar.bz2
scummvm-rg350-f15db40927443953aeb880fac1d4093301004e03.zip
Don't uses strcpy() on overlapping memory areas. It's undefined.
svn-id: r46944
Diffstat (limited to 'engines')
-rw-r--r--engines/tinsel/detection.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/tinsel/detection.cpp b/engines/tinsel/detection.cpp
index 100657786c..07db1772f9 100644
--- a/engines/tinsel/detection.cpp
+++ b/engines/tinsel/detection.cpp
@@ -756,7 +756,12 @@ const ADGameDescription *TinselMetaEngine::fallbackDetect(const Common::FSList &
char tempFilename[50];
strcpy(tempFilename, fileDesc->fileName);
char *pOne = strchr(tempFilename, '1');
- if (pOne) strcpy(pOne, pOne + 1); // FIXME: Valgrind complains about this
+ if (pOne) {
+ do {
+ *pOne = *(pOne + 1);
+ pOne++;
+ } while (*pOne);
+ }
Common::String fname(tempFilename);
if (allFiles.contains(fname) && !filesSizeMD5.contains(fname)) {