[Scummvm-git-logs] scummvm master -> 6f4acceede7425c3f34e3bd776d47399cce2c0ac

AndywinXp noreply at scummvm.org
Tue Dec 27 14:01:04 UTC 2022


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:
6f4acceede SCUMM: GUI: Insert workaround for german LOOM FM-Towns


Commit: 6f4acceede7425c3f34e3bd776d47399cce2c0ac
    https://github.com/scummvm/scummvm/commit/6f4acceede7425c3f34e3bd776d47399cce2c0ac
Author: AndywinXp (andywinxp at gmail.com)
Date: 2022-12-27T15:00:56+01:00

Commit Message:
SCUMM: GUI: Insert workaround for german LOOM FM-Towns

Fixes a part of bug #13980

Changed paths:
    engines/scumm/gfx_gui.cpp


diff --git a/engines/scumm/gfx_gui.cpp b/engines/scumm/gfx_gui.cpp
index 7d7a983deb4..9c03e9ad91b 100644
--- a/engines/scumm/gfx_gui.cpp
+++ b/engines/scumm/gfx_gui.cpp
@@ -1483,6 +1483,16 @@ void ScummEngine::queryQuit(bool returnToLauncher) {
 
 	convertMessageToString((const byte *)getGUIString(gsQuitPrompt), (byte *)msgLabelPtr, sizeof(msgLabelPtr));
 	if (msgLabelPtr[0] != '\0') {
+
+		// WORKAROUND: In the german version of LOOM FM-Towns, the string in the game data is stored with a '\r'
+		// character at the end. This means that the string being displayed on screen will end with "(J oder N)J",
+		// and localizedYesKey will be assigned to '\r'. Let's fix this by truncating the relevant string.
+		if (_enableEnhancements && _game.id == GID_LOOM &&
+			_game.platform == Common::kPlatformFMTowns &&
+			strstr(msgLabelPtr, "(J oder N)J\r")) {
+			msgLabelPtr[Common::strnlen(msgLabelPtr, sizeof(msgLabelPtr)) - 1] = '\0';
+		}
+
 		localizedYesKey = msgLabelPtr[Common::strnlen(msgLabelPtr, sizeof(msgLabelPtr)) - 1];
 		msgLabelPtr[Common::strnlen(msgLabelPtr, sizeof(msgLabelPtr)) - 1] = '\0';
 




More information about the Scummvm-git-logs mailing list