[Scummvm-cvs-logs] CVS: scummvm/scumm charset.cpp,2.91,2.92 string.cpp,1.217,1.218

Max Horn fingolfin at users.sourceforge.net
Sun Apr 25 06:41:03 CEST 2004


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28224

Modified Files:
	charset.cpp string.cpp 
Log Message:
Workaround for bug #864030 (COMI: ASCII 0xb (11) not handled)

Index: charset.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/charset.cpp,v
retrieving revision 2.91
retrieving revision 2.92
diff -u -d -r2.91 -r2.92
--- charset.cpp	8 Apr 2004 23:41:10 -0000	2.91
+++ charset.cpp	25 Apr 2004 13:34:19 -0000	2.92
@@ -146,9 +146,7 @@
 	while ((chr = str[pos++]) != 0) {
 		if (chr == '@')
 			continue;
-		if (chr == 254)
-			chr = 255;
-		if (chr == 255) {
+		if (chr == 254 || chr == 255) {
 			chr = str[pos++];
 			if (chr == 3) // 'Wait'
 				break;

Index: string.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/string.cpp,v
retrieving revision 1.217
retrieving revision 1.218
diff -u -d -r1.217 -r1.218
--- string.cpp	25 Apr 2004 13:22:09 -0000	1.217
+++ string.cpp	25 Apr 2004 13:34:19 -0000	1.218
@@ -191,6 +191,14 @@
 			_keepText = false;
 			break;
 		}
+		
+		// FIXME: This is a workaround for bug #864030: In COMI, some text
+		// contains ASCII character 11 = 0xB. It's not quite clear what it is
+		// good for; so for now we just ignore it, which seems to match the
+		// original engine (BTW, traditionally, this is a 'vertical tab').
+		if (c == 0x0B)
+			continue;
+
 		if (c == 13) {
 		newLine:;
 			_charset->_nextLeft = _string[0].xpos;





More information about the Scummvm-git-logs mailing list