--- qt-2.3.1/src/tools/qeucjpcodec.cpp.orig	Wed Jun 13 17:53:47 2001
+++ qt-2.3.1/src/tools/qeucjpcodec.cpp	Sat Dec 22 20:55:38 2001
@@ -317,8 +317,8 @@
 	}
 	// there exists ja_JP.EUC, ko_KR.EUC, zh_CN.EUC and zh_TW.EUC
 	// so "euc" may or may not be Japanese EUC.
-	if (qstricmp(p, "euc") == 0) {
-	    return ja ? score + 4 : 1;
+	if (qstricmp(p, "euc") == 0 && ja) {
+	    return score + 4;
 	}
     }
     return QTextCodec::heuristicNameMatch(hint);
--- qt-2.3.1/src/tools/qeuckrcodec.cpp.orig	Wed Jun 13 17:53:47 2001
+++ qt-2.3.1/src/tools/qeuckrcodec.cpp	Sat Dec 22 20:55:38 2001
@@ -221,8 +221,8 @@
     if (qstricmp(p, "eucKR") == 0) {
       return score + 4;
     }
-    else if (qstricmp(p, "euc") == 0) {
-      return ko ? score + 4 : 1;
+    else if (qstricmp(p, "euc") == 0 && ko) {
+      return score + 4;
     }
   }
   return QTextCodec::heuristicNameMatch(hint);

--- qt-2.3.1/src/tools/qgbkcodec.cpp.orig	Wed Jun 13 17:53:47 2001
+++ qt-2.3.1/src/tools/qgbkcodec.cpp	Fri Mar  1 18:36:20 2002
@@ -183,10 +183,13 @@
     	p = hint;
     }
     if (p) {
-    	if (qstricmp(p, "GBK") == 0)
-      	    return score + 4;
+	if ((qstricmp(p, "GBK") == 0) ||
+	    (qstricmp(p, "eucCN") == 0))
+	    return score + 4;
 	else if (qstricmp(p, "GB2312") == 0)
 	    return score + 2;
+	else if (qstricmp(p, "euc") == 0 && zh)
+	    return score + 4;
     }
     return QTextCodec::heuristicNameMatch(hint);
 }
