From 152a101f2bf9a90cc4dc32c6f446b9c899a178b1 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter_e@gmx.net>
Date: Fri, 17 Sep 2004 21:59:57 +0000
Subject: [PATCH] Allow WIN1250 as server encoding.

---
 doc/src/sgml/charset.sgml       | 44 ++++++++++++++++++++-------------
 src/backend/utils/mb/encnames.c |  8 +++---
 src/backend/utils/mb/wchar.c    | 12 ++++-----
 src/include/mb/pg_wchar.h       |  6 ++---
 4 files changed, 40 insertions(+), 30 deletions(-)

diff --git a/doc/src/sgml/charset.sgml b/doc/src/sgml/charset.sgml
index ce4a1f81e1a..a3dc9c30f93 100644
--- a/doc/src/sgml/charset.sgml
+++ b/doc/src/sgml/charset.sgml
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/charset.sgml,v 2.44 2004/03/23 02:47:35 neilc Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/charset.sgml,v 2.45 2004/09/17 21:59:56 petere Exp $ -->
 
 <chapter id="charset">
  <title>Localization</>
@@ -396,14 +396,22 @@ initdb --locale=sv_SE
 	 <entry><literal>KOI8</literal></entry>
 	 <entry><acronym>KOI</acronym>8-R(U)</entry>
 	</row>
-	<row>
-	 <entry><literal>WIN</literal></entry>
-	 <entry>Windows CP1251</entry>
-	</row>
 	<row>
 	 <entry><literal>ALT</literal></entry>
 	 <entry>Windows CP866</entry>
 	</row>
+	<row>
+	 <entry><literal>WIN874</literal></entry>
+	 <entry>Windows CP874 (Thai)</entry>
+	</row>
+	<row>
+	 <entry><literal>WIN1250</literal></entry>
+	 <entry>Windows CP1250</entry>
+	</row>
+	<row>
+	 <entry><literal>WIN</literal></entry>
+	 <entry>Windows CP1251</entry>
+	</row>
 	<row>
 	 <entry><literal>WIN1256</literal></entry>
 	 <entry>Windows CP1256 (Arabic)</entry>
@@ -412,10 +420,6 @@ initdb --locale=sv_SE
 	 <entry><literal>TCVN</literal></entry>
 	 <entry><acronym>TCVN</>-5712/Windows CP1258 (Vietnamese)</entry>
 	</row>
-	<row>
-	 <entry><literal>WIN874</literal></entry>
-	 <entry>Windows CP874 (Thai)</entry>
-	</row>
        </tbody>
       </tgroup>
      </table>
@@ -677,14 +681,26 @@ $ <userinput>psql -l</userinput>
 	 </entry>
 	</row>
 	<row>
-	 <entry><literal>WIN</literal></entry>
+	 <entry><literal>ALT</literal></entry>
 	 <entry><literal>ISO_8859_5</literal>, <literal>WIN</literal>, 
 	 <literal>ALT</literal>, <literal>KOI8</literal>,
 	 <literal>UNICODE</literal>, <literal>MULE_INTERNAL</literal>
 	 </entry>
 	</row>
 	<row>
-	 <entry><literal>ALT</literal></entry>
+	 <entry><literal>WIN874</literal></entry>
+	 <entry><literal>WIN874</literal>,
+	 <literal>UNICODE</literal>
+	 </entry>
+	</row>
+	<row>
+	 <entry><literal>WIN1250</literal></entry>
+	 <entry><literal>LATIN2</literal>, <literal>WIN1250</literal>,
+         <literal>UNICODE</literal>, <literal>MULE_INTERNAL</literal>
+	 </entry>
+	</row>
+	<row>
+	 <entry><literal>WIN</literal></entry>
 	 <entry><literal>ISO_8859_5</literal>, <literal>WIN</literal>, 
 	 <literal>ALT</literal>, <literal>KOI8</literal>,
 	 <literal>UNICODE</literal>, <literal>MULE_INTERNAL</literal>
@@ -702,12 +718,6 @@ $ <userinput>psql -l</userinput>
 	 <literal>UNICODE</literal>
 	 </entry>
 	</row>
-	<row>
-	 <entry><literal>WIN874</literal></entry>
-	 <entry><literal>WIN874</literal>,
-	 <literal>UNICODE</literal>
-	 </entry>
-	</row>
        </tbody>
       </tgroup>
      </table>
diff --git a/src/backend/utils/mb/encnames.c b/src/backend/utils/mb/encnames.c
index 1d0522427c4..634861a2053 100644
--- a/src/backend/utils/mb/encnames.c
+++ b/src/backend/utils/mb/encnames.c
@@ -2,7 +2,7 @@
  * Encoding names and routines for work with it. All
  * in this file is shared bedween FE and BE.
  *
- * $PostgreSQL: pgsql/src/backend/utils/mb/encnames.c,v 1.18 2003/11/29 22:39:59 pgsql Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/mb/encnames.c,v 1.19 2004/09/17 21:59:57 petere Exp $
  */
 #ifdef FRONTEND
 #include "postgres_fe.h"
@@ -340,6 +340,9 @@ pg_enc2name pg_enc2name_tbl[] =
 	{
 		"ISO_8859_8", PG_ISO_8859_8
 	},
+	{
+		"WIN1250", PG_WIN1250
+	},
 	{
 		"SJIS", PG_SJIS
 	},
@@ -352,9 +355,6 @@ pg_enc2name pg_enc2name_tbl[] =
 	{
 		"UHC", PG_UHC
 	},
-	{
-		"WIN1250", PG_WIN1250
-	},
 	{
 		"GB18030", PG_GB18030
 	}
diff --git a/src/backend/utils/mb/wchar.c b/src/backend/utils/mb/wchar.c
index 5f198ffa517..0df562a5a6d 100644
--- a/src/backend/utils/mb/wchar.c
+++ b/src/backend/utils/mb/wchar.c
@@ -1,7 +1,7 @@
 /*
  * conversion functions between pg_wchar and multibyte streams.
  * Tatsuo Ishii
- * $PostgreSQL: pgsql/src/backend/utils/mb/wchar.c,v 1.37 2004/08/29 05:06:51 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/mb/wchar.c,v 1.38 2004/09/17 21:59:57 petere Exp $
  *
  * WIN1250 client encoding updated by Pavel Behal
  *
@@ -743,11 +743,11 @@ pg_wchar_tbl pg_wchar_table[] = {
 	{pg_latin12wchar_with_len, pg_latin1_mblen, pg_latin1_dsplen, 1},	/* 25; ISO-8859-6 */
 	{pg_latin12wchar_with_len, pg_latin1_mblen, pg_latin1_dsplen, 1},	/* 26; ISO-8859-7 */
 	{pg_latin12wchar_with_len, pg_latin1_mblen, pg_latin1_dsplen, 1},	/* 27; ISO-8859-8 */
-	{0, pg_sjis_mblen, pg_sjis_dsplen, 2},		/* 28; PG_SJIS */
-	{0, pg_big5_mblen, pg_big5_dsplen, 2},		/* 29; PG_BIG5 */
-	{0, pg_gbk_mblen, pg_gbk_dsplen, 2},		/* 30; PG_GBK */
-	{0, pg_uhc_mblen, pg_uhc_dsplen, 2},		/* 31; PG_UHC */
-	{pg_latin12wchar_with_len, pg_latin1_mblen, pg_latin1_dsplen, 1},	/* 32; PG_WIN1250 */
+	{pg_latin12wchar_with_len, pg_latin1_mblen, pg_latin1_dsplen, 1},	/* 28; PG_WIN1250 */
+	{0, pg_sjis_mblen, pg_sjis_dsplen, 2},		/* 29; PG_SJIS */
+	{0, pg_big5_mblen, pg_big5_dsplen, 2},		/* 30; PG_BIG5 */
+	{0, pg_gbk_mblen, pg_gbk_dsplen, 2},		/* 31; PG_GBK */
+	{0, pg_uhc_mblen, pg_uhc_dsplen, 2},		/* 32; PG_UHC */
 	{0, pg_gb18030_mblen, pg_gb18030_dsplen, 2} /* 33; PG_GB18030 */
 };
 
diff --git a/src/include/mb/pg_wchar.h b/src/include/mb/pg_wchar.h
index 38c2f354a21..2b4ba2d9fb0 100644
--- a/src/include/mb/pg_wchar.h
+++ b/src/include/mb/pg_wchar.h
@@ -1,4 +1,4 @@
-/* $PostgreSQL: pgsql/src/include/mb/pg_wchar.h,v 1.51 2004/08/29 05:06:56 momjian Exp $ */
+/* $PostgreSQL: pgsql/src/include/mb/pg_wchar.h,v 1.52 2004/09/17 21:59:57 petere Exp $ */
 
 #ifndef PG_WCHAR_H
 #define PG_WCHAR_H
@@ -177,19 +177,19 @@ typedef enum pg_enc
 	PG_ISO_8859_6,				/* ISO-8859-6 */
 	PG_ISO_8859_7,				/* ISO-8859-7 */
 	PG_ISO_8859_8,				/* ISO-8859-8 */
+	PG_WIN1250,					/* windows-1250 */
 
 	/* followings are for client encoding only */
 	PG_SJIS,					/* Shift JIS (Winindows-932) */
 	PG_BIG5,					/* Big5 (Windows-950) */
 	PG_GBK,						/* GBK (Windows-936) */
 	PG_UHC,						/* UHC (Windows-949) */
-	PG_WIN1250,					/* windows-1250 */
 	PG_GB18030,					/* GB18030 */
 	_PG_LAST_ENCODING_			/* mark only */
 
 } pg_enc;
 
-#define PG_ENCODING_BE_LAST PG_ISO_8859_8
+#define PG_ENCODING_BE_LAST PG_WIN1250
 #define PG_ENCODING_FE_LAST PG_GB18030
 
 /*
-- 
GitLab