[Scummvm-git-logs] scummvm master -> 1f8b5439dcd12d72ccc53b10a4677cea28c17004

dwatteau noreply at scummvm.org
Thu Aug 29 11:34:06 UTC 2024


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
1f8b5439dc SCUMM: INDY3 (VGA DE): Update workaround comment for the latest convertMessageToString() changes


Commit: 1f8b5439dcd12d72ccc53b10a4677cea28c17004
    https://github.com/scummvm/scummvm/commit/1f8b5439dcd12d72ccc53b10a4677cea28c17004
Author: Donovan Watteau (contrib at dwatteau.fr)
Date: 2024-08-29T13:32:19+02:00

Commit Message:
SCUMM: INDY3 (VGA DE): Update workaround comment for the latest convertMessageToString() changes

Changed paths:
    engines/scumm/string.cpp


diff --git a/engines/scumm/string.cpp b/engines/scumm/string.cpp
index 89bdda51d5f..bde45729580 100644
--- a/engines/scumm/string.cpp
+++ b/engines/scumm/string.cpp
@@ -1437,13 +1437,15 @@ int ScummEngine::convertMessageToString(const byte *msg, byte *dst, int dstSize)
 		if (chr == 0xFF) {
 			chr = src[num++];
 
-			// WORKAROUND for bugs #1675 and #2715, script bugs in German Indy3.
-			// Some German 'sz' (Eszett) characters were encoded incorrectly as
-			// 0xFF instead of 0xE1, triggering convertMessageToString() and then
-			// causing a fatal error there. We replace this by the correct encoding
-			// here. At least the DOS and Amiga German releases are affected.
+			// WORKAROUND: In the German releases of Indy3, some Eszett characters
+			// were encoded incorrectly as 0xFF instead of 0xE1 (see bugs #1675 and
+			// #2715). At least the DOS and Amiga German releases are affected.
+			// We've been fixing this since ScummVM 0.10.0 in order to prevent a
+			// fatal error, but since ScummVM 2.9.0 our convertMessageToString()
+			// is more accurate and won't cause an error anymore, so fixing the
+			// invalid characters now becomes a typo-fix Enhancement.
 			//
-			// See also ScummEngine::resStrLen().
+			// See also the corresponding ScummEngine::resStrLen() workaround.
 			if (enhancementEnabled(kEnhTextLocFixes) && _game.id == GID_INDY3 && _language == Common::DE_DEU &&
 				((_roomResource == 23 && chr == 0x2E) ||
 				 (_roomResource == 21 && chr == 0x20))) {




More information about the Scummvm-git-logs mailing list