aboutsummaryrefslogtreecommitdiff
path: root/engines/agos
diff options
context:
space:
mode:
authorTravis Howell2009-07-14 12:34:42 +0000
committerTravis Howell2009-07-14 12:34:42 +0000
commite457a3f2513529930d16636155243dfc125035bd (patch)
treeea6dff18a2cf4748280ee6c5582f210358ad912b /engines/agos
parentfb247af301a0b77bc55950303e9f962b6a515883 (diff)
downloadscummvm-rg350-e457a3f2513529930d16636155243dfc125035bd.tar.gz
scummvm-rg350-e457a3f2513529930d16636155243dfc125035bd.tar.bz2
scummvm-rg350-e457a3f2513529930d16636155243dfc125035bd.zip
Add workaround for bug #1538873 - SIMON1 (French): Text wrongly displayed.
svn-id: r42474
Diffstat (limited to 'engines/agos')
-rw-r--r--engines/agos/string.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/engines/agos/string.cpp b/engines/agos/string.cpp
index a466be796f..23dc24cf33 100644
--- a/engines/agos/string.cpp
+++ b/engines/agos/string.cpp
@@ -136,6 +136,18 @@ const byte *AGOSEngine::getStringPtrByID(uint16 stringId, bool upperCase) {
strcpy((char *)dst, (const char *)stringPtr);
}
+ // WORKAROUND bug #1538873: The French version used excess spaces,
+ // at the end of many messages, so we strip off those excess spaces.
+ if (getGameType() == GType_SIMON1 && _language == Common::FR_FRA) {
+ uint16 len = strlen((const char *)dst) - 1;
+
+ while (len && dst[len] == 32) {
+ dst[len] = 0;
+ len--;
+ }
+
+ }
+
if (upperCase && *dst) {
if (islower(*dst))
*dst = toupper(*dst);