]> granicus.if.org Git - postgresql/commitdiff
that's just me again, here's normal patch for KOI8_U to
authorBruce Momjian <bruce@momjian.us>
Wed, 9 May 2001 21:11:26 +0000 (21:11 +0000)
committerBruce Momjian <bruce@momjian.us>
Wed, 9 May 2001 21:11:26 +0000 (21:11 +0000)
jdbc/Connection.java

Andy
P.S. in Connection.java if encoding=="WIN" then dbEncoding is set to
"Cp1252".
What if it's Cyrillic "WIN"? Than it should be "Cp1251". Is there any
way to fix that without making different "WIN" encodings in
PostgreSQL?

Andy Rysin

src/interfaces/jdbc/org/postgresql/Connection.java

index 87fbc337a73a9e316f3e41a2319d7011a0606250..d5d27762a6009bd28d7792aba9fac0e36bf31aad 100644 (file)
@@ -10,7 +10,7 @@ import org.postgresql.largeobject.*;
 import org.postgresql.util.*;
 
 /**
- * $Id: Connection.java,v 1.14 2001/01/31 08:26:01 peter Exp $
+ * $Id: Connection.java,v 1.15 2001/05/09 21:11:26 momjian Exp $
  *
  * This abstract class is used by org.postgresql.Driver to open either the JDBC1 or
  * JDBC2 versions of the Connection class.
@@ -307,7 +307,16 @@ public abstract class Connection
         } else if (dbEncoding.equals("EUC_TW")) {
           dbEncoding = "EUC_TW";
         } else if (dbEncoding.equals("KOI8")) {
-          dbEncoding = "KOI8_R";
+         // try first if KOI8_U is present, it's a superset of KOI8_R
+           try {
+               dbEncoding = "KOI8_U";
+               "test".getBytes(dbEncoding);
+           }
+           catch(UnsupportedEncodingException uee) {
+           // well, KOI8_U is still not in standard JDK, falling back to KOI8_R :(
+               dbEncoding = "KOI8_R";
+           }
+
         } else if (dbEncoding.equals("WIN")) {
           dbEncoding = "Cp1252";
         } else {