aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/string.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/scumm/string.cpp')
-rw-r--r--engines/scumm/string.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/engines/scumm/string.cpp b/engines/scumm/string.cpp
index fa7bd5d6a6..19b51b6147 100644
--- a/engines/scumm/string.cpp
+++ b/engines/scumm/string.cpp
@@ -844,6 +844,16 @@ int ScummEngine::convertMessageToString(const byte *msg, byte *dst, int dstSize)
*dst++ = 0xE1;
continue;
}
+
+ // WORKAROUND for bug #1514457: Yet another script bug in Indy3.
+ // Once more a german 'sz' was encoded incorrectly, but this time
+ // they simply encoded it as 0xFF instead of 0xE1. Happens twice
+ // in script 71.
+ if (_game.id == GID_INDY3 && chr == 0x20 && vm.slot[_currentScript].number == 71) {
+ num--;
+ *dst++ = 0xE1;
+ continue;
+ }
if (chr == 1 || chr == 2 || chr == 3 || chr == 8) {
// Simply copy these special codes