aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2009-05-16 04:50:52 +0000
committerPaul Gilbert2009-05-16 04:50:52 +0000
commite994b94c814ece7285228598c408b9939e2d3398 (patch)
tree63723a3587d2d1d42090e7c7ad612fb062a596e0
parent7ca0ca1dab227380425c314d285da4e0261e1b09 (diff)
downloadscummvm-rg350-e994b94c814ece7285228598c408b9939e2d3398.tar.gz
scummvm-rg350-e994b94c814ece7285228598c408b9939e2d3398.tar.bz2
scummvm-rg350-e994b94c814ece7285228598c408b9939e2d3398.zip
Added a workaround for a discrepancy in the English version - one of the long messages had a LF in the middle of a word
svn-id: r40618
-rw-r--r--engines/cruise/overlay.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/engines/cruise/overlay.cpp b/engines/cruise/overlay.cpp
index 68f6545d77..b5bb145b91 100644
--- a/engines/cruise/overlay.cpp
+++ b/engines/cruise/overlay.cpp
@@ -25,6 +25,7 @@
#include "common/stream.h"
+#include "cruise/cruise.h"
#include "cruise/cruise_main.h"
namespace Cruise {
@@ -566,6 +567,16 @@ int loadOverlay(const char *scriptName) {
}
s2.read(ovlData->stringTable[i].string, ovlData->stringTable[i].length);
+
+ // WORKAROUND: English version, idx 16, num #60 has a line feed character
+ // in the middle of a word
+ if ((scriptIdx == 16) && (i == 60) && (_vm->getLanguage() == Common::EN_ANY)) {
+ char *p = strchr(ovlData->stringTable[i].string, '\xa');
+ if (p != NULL) {
+ // Delete the line feed character by shifting remainder of message
+ while ((*p = *(p + 1)) != '\0') ++p;
+ }
+ }
}
}
}