[Scummvm-cvs-logs] CVS: scummvm/scumm charset.cpp,2.161,2.162 string.cpp,1.313,1.314

kirben kirben at users.sourceforge.net
Sun Nov 27 02:33:07 CET 2005


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

Modified Files:
	charset.cpp string.cpp 
Log Message:

Add patch:
1367403 - Korean Fixes


Index: charset.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/charset.cpp,v
retrieving revision 2.161
retrieving revision 2.162
diff -u -d -r2.161 -r2.162
--- charset.cpp	17 Nov 2005 15:58:26 -0000	2.161
+++ charset.cpp	27 Nov 2005 10:32:20 -0000	2.162
@@ -156,7 +156,7 @@
 		else if (kanjiType == EKANJI) chunk = 144;
 		break;
 	default:
-		error("Invalid Char! f %x s %x base %x c %d p %d", f, s, base, c, p);
+		debug(4, "Invalid Char! f %x s %x base %x c %d p %d", f, s, base, c, p);
 		return 0;
 	}
 

Index: string.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/string.cpp,v
retrieving revision 1.313
retrieving revision 1.314
diff -u -d -r1.313 -r1.314
--- string.cpp	19 Nov 2005 10:45:02 -0000	1.313
+++ string.cpp	27 Nov 2005 10:32:21 -0000	1.314
@@ -455,15 +455,7 @@
 
 		_charset->_left = _charset->_nextLeft;
 		_charset->_top = _charset->_nextTop;
-		if (c & 0x80 && _useCJKMode) {
-			if (_language == Common::JA_JPN && !checkSJISCode(c)) {
-				c = 0x20; //not in S-JIS
-			} else {
-				byte *buffer = _charsetBuffer + _charsetBufPos;
-				c += *buffer++ * 256; //LE
-				_charsetBufPos = buffer - _charsetBuffer;
-			}
-		}
+
 		if (_version >= 7) {
 #ifndef DISABLE_SCUMM_7_8
 			if (subtitleLine == subtitleBuffer) {
@@ -474,6 +466,15 @@
 			*subtitleLine = '\0';
 #endif
 		} else {
+			if (c & 0x80 && _useCJKMode) {
+				if (_language == Common::JA_JPN && !checkSJISCode(c)) {
+					c = 0x20; //not in S-JIS
+				} else {
+					byte *buffer = _charsetBuffer + _charsetBufPos;
+					c += *buffer++ * 256; //LE
+					_charsetBufPos = buffer - _charsetBuffer;
+				}
+			}
 			if (_version <= 3) {
 				_charset->printChar(c);
 			} else {
@@ -988,6 +989,8 @@
 		for (i = 0; i < lineCount; i++) {
 			if (*ptr == '!') {
 				// Don't know what a line with '!' means, just ignore it
+			} else if (*ptr == 'h') {
+				// File contains Korean text (Hangul). just ignore it
 			} else if (*ptr == 'e') {
 				// File is encoded!
 				enc = 0x13;





More information about the Scummvm-git-logs mailing list