diff options
Diffstat (limited to 'engines/scumm')
-rw-r--r-- | engines/scumm/string.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/engines/scumm/string.cpp b/engines/scumm/string.cpp index c2a07fa54b..1c23223605 100644 --- a/engines/scumm/string.cpp +++ b/engines/scumm/string.cpp @@ -503,7 +503,9 @@ void ScummEngine::fakeBidiString(char *ltext, bool ignoreVerb) { int sthead = 0; char last = '\0'; for (int j = 0; j < ipos; j++) { + // Reverse string on current line (between start and ipos). char *curr = text + start + ipos - j - 1; + // Special cases to preserve original ordering (numbers). if (Common::isDigit(*curr) || (*curr == ',' && j + 1 < ipos && Common::isDigit(*(curr - 1)) && Common::isDigit(last)) || (*curr == '-' && (j + 1 == ipos || Common::isSpace(*(curr - 1))) && Common::isDigit(last))) { |