diff options
author | Travis Howell | 2009-07-14 12:34:42 +0000 |
---|---|---|
committer | Travis Howell | 2009-07-14 12:34:42 +0000 |
commit | e457a3f2513529930d16636155243dfc125035bd (patch) | |
tree | ea6dff18a2cf4748280ee6c5582f210358ad912b /engines/agos | |
parent | fb247af301a0b77bc55950303e9f962b6a515883 (diff) | |
download | scummvm-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.cpp | 12 |
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); |